smoke kde binding
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的更多相关文章
- org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): da.huying.usermanag ...
- WPF binding 参考
Introduction This is an article on WPF Binding Cheat Sheet. Some of the Binding won't work for Silve ...
- 十五天精通WCF——第一天 三种Binding让你KO80%的业务
转眼wcf技术已经出现很多年了,也在.net界混的风生水起,同时.net也是一个高度封装的框架,作为在wcf食物链最顶端的我们所能做的任务已经简单的不能再简单了, 再简单的话马路上的大妈也能写wcf了 ...
- Binding笔记
Binding基础 绑定某个对象的属性值到控制上,写法如下: public class Order : INotifyPropertyChanged//只要实现此接口 { public event ...
- Data Binding使用技巧
Data Binding 根据变量,自动赋值到各widget. How 1.编写layout文件,这里的layout为: act_data_bind_demo.xml 这里需要先准备变量 在具体的wi ...
- WPF之Binding初探
初学wpf,经常被Binding搞晕,以下记录写Binding的基础. 首先,盗用张图.这图形象的说明了Binding的机理. 对于Binding,意思是数据绑定,基本用法是: 1.在xmal中使用 ...
- [XAML]类似WPF绑定的Binding的读取方法
在WPF的XAML里,依赖属性可以使用基于BindingBase之类的MarkupExtensin 读取XAML时,会自动的把该BindingBase转换为BindingExpressionBase ...
- [ASP.NET MVC 小牛之路]15 - Model Binding
Model Binding(模型绑定)是 MVC 框架根据 HTTP 请求数据创建 .NET 对象的一个过程.我们之前所有示例中传递给 Action 方法参数的对象都是在 Model Binding ...
- 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 ...
随机推荐
- C#创建微信自定义菜单
string posturl = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + access_to ...
- JS中==和===的区别
1.对于string,number等基础类型,==和===是有区别的 1)不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,===如果类型不同,其结果就是不等 2)同类型比较,直接进 ...
- DbUtil组件及C3P0数据库连接池组件的使用
DbUtils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能. 使用c ...
- vs的watch使用
VC调试器高级应用----WATCH窗口篇 一.格式化数据和表达式赋值语句. 常用变量格式化符(表达式的值后跟逗号,接格式化符,如"(int)0xFFFF,d"):d :有符号的 ...
- dom三个事件
1,页面加载后 window.onload=function(){}; 2,页面(关闭)卸载后触发 window.onunload=function(){}; 3,页面关闭前触发 window.onb ...
- demo_07选择器练习
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- Hibernate持久化对象
持久化类应遵循的规则: 有无参构造器,构造器的修饰符>=默认访问控制符 有标识属性,映射数据库表的主键,建议使用基本类型的包装类 每个成员有setter和getter 非final修饰的类 重写 ...
- 使用Fiddler提高前端工作效率 (实例篇)
上篇中,我们对Fiddler Web Debugger有了简单的接触,也许你已经开始在用Fiddler进行HTTP相关的调试,在这一篇,我们将通过一个实例了解Fiddler的神奇魔法. 在我们前端开发 ...
- js获取url的get传值函数
function getvl(name) { var reg = new RegExp("(^|\\?|&)"+ name +"=([^&]*)(\\s| ...
- 收藏一个匹配html内容的文章
http://blog.csdn.net/donglynn/article/details/35788879