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 ...
随机推荐
- aptitude
aptitude比apt-get 要好用.是 Debian 及其衍生系统中功能极其强大的包管理工具.与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些.举例来说,aptitude在 ...
- C#操作redis代码汇总
马上要用redis来改造现有的o2o项目了,在linux下部署了个redis,顺便研究了下代码操作,分享下代码 using System; using System.Collections.Gener ...
- JS数值输入控制
在html文本框录入数值时,可用如下方法进行控制判断. 整数:<input type="text" name="aaa" onkeypress=" ...
- 15_动态SQL
[UserMapper.xml]和之前的作对比 <mapper namespace="com.Higgin.Mybatis.mapper.UserMapper"> &l ...
- OpenGL中的深度、深度缓存、深度测试及保存成图片
1.深度 所谓深度,就是在openGL坐标系中,像素点Z坐标距离摄像机的距离.摄像机可能放在坐标系的任何位置,那么,就不能简单的说Z数值越大或越小,就是越靠近摄像机. 2.深度缓冲区 深度缓冲区原理就 ...
- std::map的操作:插入、修改、删除和遍历
using namespace std; std::map<int,int> m_map; 1.添加 for(int i=0;i<10;i++) { m_map.insert(mak ...
- C++ GUI Programming with Qt4 笔记 -- chap1
1. Hello Qt #include <QApplication> #include <QLabel> int main(int argc, char *argv[]){ ...
- linux centos cli all proxy
linux centos 下代理http.https.ftp.all_proxy 全局使用代理: export http_proxy=http://host:port/ export https_pr ...
- Jquery div边框大全
网址 http://jquery.malsup.com/corner/ jQuery Corner是一款jQuery的插件,最初由Dave Methvin开发,但后在Malsup同志的协助下,进行了一 ...
- 测试网站是共享还是独立ip
查看是共享还是独立:http://www.yougetsignal.com/tools/web-sites-on-web-server/ 站长工具:http://tool.webmasterhome. ...