1.git下来smokegen、smokeqt,qtruby
2.安装qt4.8.5,ruby1.9.1
3.cmake,先smokegen,设置些环境变量参数之类的,一直下来应该没问题,all build-install,ok
4.cmake smokeqt,跟smokegen差不多,因为all build的时候会使用到smokegen.exe,而smokegen.exe会依赖qt的一些dll,所以确保smokegen.exe所在目录有这些dll,否则smokegen调不起来,all build失败

还有就是smokeqttest的连接错误,可以忽略,参考http://lists.kde.org/?l=kde-bindings&m=132925678913424

5.ok,有了smokegen和smokeqt,可以尝试kde上面介绍的例子https://techbase.kde.org/Development/Languages/Smoke,可能会遇到析构smoke环境的时候有断言,一种情况是smokeqt的dll使用的crt跟host的使用的crt不是同一个版本,比如说一个debug一个release,调整一下就可以解决了
6.第五步成功之后,就可以尝试ruby binding了,就是用ruby-qtruby-smokeqt来使用qt
7.cmake qtruby,跟之前的cmake差不多,注意ruby的版本还有路径就可以了,然后all build会出现很多错误
编译错误,有些是gcc编译器自己的扩展导致的,把这些扩展屏蔽就可以了;有些是kde自己的东西,其他平台上没有,把那些项目屏蔽就可以了
连接错误,是因为qtruby4shared的导出符号问题,qtruby4shared是用export导出一些其他项目用到的符号,头文件写死了export导致其他项目导入不了,解决方法有两种,1不导出符号直接编到具体的dll里,2加个宏切换export和import
8.all build-install都ok之后,就可以尝试kde上面介绍的例子了,可惜我对ruby不是很熟悉,还在摸索中
9.kde binding有很多种语言,想尝试一下js binding

smoke kde binding的更多相关文章

  1. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

    org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): da.huying.usermanag ...

  2. WPF binding 参考

    Introduction This is an article on WPF Binding Cheat Sheet. Some of the Binding won't work for Silve ...

  3. 十五天精通WCF——第一天 三种Binding让你KO80%的业务

    转眼wcf技术已经出现很多年了,也在.net界混的风生水起,同时.net也是一个高度封装的框架,作为在wcf食物链最顶端的我们所能做的任务已经简单的不能再简单了, 再简单的话马路上的大妈也能写wcf了 ...

  4. Binding笔记

    Binding基础  绑定某个对象的属性值到控制上,写法如下: public class Order : INotifyPropertyChanged//只要实现此接口 { public event ...

  5. Data Binding使用技巧

    Data Binding 根据变量,自动赋值到各widget. How 1.编写layout文件,这里的layout为: act_data_bind_demo.xml 这里需要先准备变量 在具体的wi ...

  6. WPF之Binding初探

    初学wpf,经常被Binding搞晕,以下记录写Binding的基础. 首先,盗用张图.这图形象的说明了Binding的机理. 对于Binding,意思是数据绑定,基本用法是: 1.在xmal中使用 ...

  7. [XAML]类似WPF绑定的Binding的读取方法

    在WPF的XAML里,依赖属性可以使用基于BindingBase之类的MarkupExtensin 读取XAML时,会自动的把该BindingBase转换为BindingExpressionBase ...

  8. [ASP.NET MVC 小牛之路]15 - Model Binding

    Model Binding(模型绑定)是 MVC 框架根据 HTTP 请求数据创建 .NET 对象的一个过程.我们之前所有示例中传递给 Action 方法参数的对象都是在 Model Binding ...

  9. Exception:HTTP Status 500 - org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

    主要错误信息如下: HTTP Status 500 - org.apache.ibatis.binding.BindingException: Invalid bound statement (not ...

随机推荐

  1. CDN调度器HAProxy、Nginx、Varnish

    http://www.ttlsa.com/web/the-cdn-scheduler-nginx-haproxy-varnish/ CDN功能如下:1.将全网IP分为若干个IP段组,分组的依据通常是运 ...

  2. js 获取时间对象代码

    /** * 获取时间对象 */function getDateObj(addDayCount) { var dd = new Date(); dd.setDate(dd.getDate()+addDa ...

  3. LA 3902 Network(树上最优化 贪心)

    Network Consider a tree network with n <tex2html_verbatim_mark>nodes where the internal nodes ...

  4. 文件(夹)比较 Beyond Compare, Diff

    文件(夹)比较 Beyond Compare, Diff, UltraCompare 1.Beyond Compare(无与伦比) 2.Diff 参考 1.diff详解

  5. c++学习笔记2(c++简单程序)

    c++的简单程序 练习一: #include <iostream>int main(){std::cout<<"你好c++\n";int x;std::ci ...

  6. centOS 多网卡 启动网络 eth0 does not to be present

    centOS 6.4 中 em1 就是eth0... ---------------------------------------- http://www.php-oa.com/2012/03/07 ...

  7. iOS面试题6.30总结

    越来越多的人投入iOS这个行业中,但是作为刚才学校毕业的学生,我们没有任何经验.或者经验很少.但是这也不能阻挡我们对苹果的热情,想投入iOS的开发中.而作为进入企业的第一步,我们要参加面试.面试中我们 ...

  8. PHP 读json文件并转php配置文件

    <?php$c = file_get_contents('./cities_v2.json');$s = "<?php return " . var_export(js ...

  9. window.onresize 多次触发的解决方法

    用了window.onresize但是发现每次 onresize 后页面中状态总是不对,下面与大家分享下onresize 事件多次触发的解决方法. 之前做一个扩展,需要在改变窗口大小的时候保证页面显示 ...

  10. 使用Yii框架中遇到的三个问题

    以下由我们在信易网络公司开发项目的时候终结出的一些经验 使用Yii框架中遇到的三个问题 1.main.php文件中欲引入全局变量的问题 还原一下此问题:在Yii框架中,main.php一般会作为整个应 ...