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

时间: 2024-10-02 18:34:20

smoke kde binding的相关文章

通过maven test 报org.apache.ibatis.binding.BindingException: Invalid bound statement

背景 直接使用eclipse工具去执行,没有问题,通过testng.xml去执行,没有问题,但通过mvn clean test执行,就报错,提示org.apache.ibatis.binding.BindingException: Invalid bound statement 解决方法 首先先肯定的是:mybatis的配置是没有问题,因为eclipse可以正常执行: 在eclipse中把mapper的xml文件放到src代码目录下是可以一起打包进classes的,而maven去编译的时候不会,

基于debian/ubuntu的linux在非KDE桌面下okular无法读取pdf原因和解决方案

由于okular是KDE桌面下的软件,在其他桌面下由于库的缺失会导致无法正常工作,只需要下载对应的库就能使okular正常运行 我们使用下面的命令安装需要的文件 1 sudo apt-get install kdelibs5-plugins kdelibs5-data oxygen-icon-theme 其他的类似的问题也可以利用相同的原理解决 详细信息网址:http://askubuntu.com/questions/515772/okular-cant-read-pdf-files

UWP开发之Mvvmlight实践四:{x:bind}和{Binding}区别详解

{x:bind}是随着UWP被推出而被添加的,可以说是Win10 UWP开发专有扩展.虽然 {x:Bind} 缺少{Binding} 中的一些功能,但它运行时所花费的时间和使用的内存量均比 {Binding} 要少,且支持更好的调试. 参照网址:{x:Bind} 标记扩展,GitHub微软UWP实例之XamlBind 1,{x:Bind} 基本原理 在 XAML 加载时,{x:Bind} 将转换为你所需的绑定对象,此对象将从数据源上的某一属性中获取相关值.绑定对象可以配置为观察数据源属性值的更改

[转]KDE/QT与GNOME/GTK比较

[转]KDE/QT与GNOME/GTK比较 http://www.cnblogs.com/itech/archive/2009/08/18/1548964.html 虽然在商业方面存在竞争,GNOME与KDE两大阵营的开发者关系并没有变得更糟,相反他们都意识到支持对方的重要性—如果KDE和GNOME无法实现 应用程序的共享,那不仅是巨大的资源浪费,而且将导致Linux出现根本上的分裂.从2003年开始经过两年多的努力,KDE和GNOME都已经实现高度 的互操作性,两大平台的程序都是完全共享的,例

binding(联编)

联编(Binding): 确定具有多态性的语句调用哪个函数的过程. Static Binding (静态联编) : 在程序编译时确定调用哪个函数 例:函数重载 Dynamic Binding (动态联编) :在程序运行时,才能够确定调用哪个函数 用动态联编实现的多态,也称为运行时的多态 基类定义了虚同名函数,那么派生类中的同名函数自动变为虚函数(所以可以不加virtual关键字) 动态联编的开销比静态联编大: Summary: static binding v.s. dynamic bindin

KDE API

http://api.kde.org/2.0-api/classref/http://api.kde.org/frameworks-api/frameworks5-apidocs/ 在一个Qt程序中,会大量使用 QApplication, QDialog, QMainWindow, QAction, ... 等等 而在一个 KDE程序 中,会大量使用 KApplication, KDialog, KMainWindow, KAction, ... 抛开KDE库在Windows的成熟度不说,你知道

Data Binding Library(数据绑定库)

引子 上图中有一些 TextView 和 Button 等,正常情况下,互联网APP都会从服务器抓取数值,然后在 Activity中 findViewById 再进行setText等等.这篇文章就是用来解放你的双手劳动力 的,使用数据绑定库可以不用去findView不用在写繁琐的 setText,只要从服务器获取json 转换成 javaBean格式然后 set,duang,,,,, 所有的值就自己展现在该有的地方了. Demo: https://github.com/Afra55/DataBi

ubuntu中KDE与GNOME安装切换

转载:http://apps.hi.baidu.com/share/detail/18919303 1.在Ubuntu中安装KDE桌面命令 sudo apt-get install kUbuntu-desktop 注销 Ctrl Alt Backspace 2.设置中文环境 sudo apt-get install language-pack-kde-zh language-pack-kde-zh-base language-pack-zh language-pack-zh-base langu

Linux操作系统桌面环境GNOME和KDE的切换

一.设置GNOME或者KDE为默认的启动桌面环境 方法1:修改/etc/sysconfig/desktop,根据需要将“DESKTOP”后面的内容改为KDE或GNOME. 方法2:在当前用户目录下建立“.xinitrc”这个文件(注意文件名前有一个点号,代表建立的是一个隐藏文件),文件的内容就一行startkde或gnome-session,根据自己的需要选择KDE或GNOME. 二.GNOME和KDE的切换(“#”后面为输入命令) 1.如果需要切换到GNOME: #switchdesk gno