Ubuntu14.04中编译安装maliit-0.94-qt4
来源:互联网 发布:linux 查看cpu日志 编辑:程序博客网 时间:2024/06/05 01:53
1.1 版本信息
maliit版本:0.94-qt4
Qt版本:4.8.3
Ubuntu版本:14.04LTS
在编译maliit之前,先编译好Qt4.8.3库。配置Qt时要添加-dbus参数(编译dbus模块),详见《Ubuntu14.04中编译Qt库》。
1.2 源码framework-0.94-qt4.zip
plugins-0.94-qt4.zip
2 framework-0.94-qt4
2.1 qmake
只要配置好Qt4库,这一步一般没有问题。
2.2 make
编译过程中难免会出现一些问题,主要是缺乏某些头文件。
2.2.1 qdus
如果编译Qt4库的时候没有编译dbus模块,编译maliit frameword时会提示找不好相关QDbus头文件。因此需要编译Qt库时候就添加dbus的支持。
2.2.2 X11/extensions/Xcomposite.h
根据参考资料[1]的提示,使用apt-file工具来查看X11/extensions/Xcomposite.h属于哪个包:
sudo apt-get install apt-fileapt-file updateapt-file search "X11/extensions/Xcomposite.h"查找结果为如下:
libxcomposite-dev: /usr/include/X11/extensions/Xcomposite.h
由上面的结果可知,所缺乏的头文件属于libxcomposite-dev,因此使用下面的命令进行安装:
sudo apt-get install libxcomposite-dev
2.2.3 QEventDispatcherUNIXPrivate
错误如下:
//usr/lib/i386-linux-gnu/libQtGui.so.4: undefined reference to `QEventDispatcherUNIXPrivate::processThreadWakeUp(int)'//usr/lib/i386-linux-gnu/libQtGui.so.4: undefined reference to `QEventDispatcherUNIXPrivate::initThreadWakeUp()'
编译maliit过程中,链接时使用的库是/usr/lib/i386-linux-gnu/libGtGui.so.4,其实应该使用的是《Ubuntu14.04中编译Qt库》。之所以会链接到错误的库,那是因为没有设置好环境变量:
export QTDIR=/home/liyihai/Qt4.8.3 export PATH=$QTDIR/bin:$PATH export QMAKESPEC=$QMAKESPEC:$QTDIR/mkspecs/linux-g++ export LD_LIBRARY_PATH=$QTDIR/lib
设置好上述环境变量,再重新编译,问题解决。
2.3 make install/uninstall
需要root权限,因此:
sudo make install
3 plugins=0.95-qt4
3.1 qmake
3.2 make
3.3 make install/uninstall
需要root权限,因此:
sudo make install4 测试
在命令行终端中输入以下命令启动maliit server:
maliit-server4.1 错误1:svg
lainqt WARNING: file:///usr/share/maliit/plugins/org/nemomobile/FunctionKey.qml:119:5: QML Image: Error decoding: file:///usr/share/maliit/plugins/org/nemomobile/icon-m-input-methods-shift-lowercase.svg: Unsupported image format
出现这个问题的愿意在于编译Qt库的时候没有编译svg模块。配置Qt库的时候添加-svg选项就好,见《Ubuntu14.04中编译Qt库》。
4.2 错误2:initiator
根据参考资料[2]的提示,启动开启maliit-server的调试功能:
export MALIIT_DEBUG=enabled然后启动maliit-server提示:
DEBUG: bool MIMPluginManagerPrivate::switchPlugin(const QString&, MAbstractInputMethod*, const QString&) "libmaliit-keyboard-plugin.so" could not find initiator补充:若启动maliit-exampleapp-embbed,则不用使用上面的MALIIT_DEUG环境变量开启调试功能,也会提示上面的警告信息。
参考资料
[1]How to find X11/extensions/XTest.h
[2]maliit-server not exposing autopilot interface, tests cannot be written
- Ubuntu14.04中编译安装maliit-0.94-qt4
- Ubuntu14.04中编译安装maliit-0.99.0
- Ubuntu14.04 静态编译安装Qt4.8.6
- 在Ubuntu14.04中安装海思平台上交叉编译的qt4.8.7
- ubuntu14.04 osg3.0.1 qt4.8.6 boost1.58编译安装
- ubuntu14.04安装qt4.8.6
- ubuntu14.04安装QT4.7.4
- ubuntu14.04交叉编译qt4.8.6
- 在ubuntu14.04下安装QT4
- ubuntu14.04下安装QT4,QT5
- ubuntu14.04下安装配置Qt4.8.6
- 在ubuntu14.04上安装libqglviewer-qt4-dev
- Ubuntu14.04安装QT4.8.6和QT Creator
- ubuntu14.04下安装qt4.8.6 +qt creator
- ubuntu14.04中qemu编译安装及报错处理
- Ubuntu14.04 OpenCV编译安装
- ubuntu14.04 编译安装ceph
- ubuntu14.04编译安装qemu
- 《Effective STL》条款1-条款2
- GitHub上README.md教程
- Defining BJT Noise Equations
- 警告框和操作表(ActionSheet)
- sap用户出口 badi查询程序(通过事务代码)
- Ubuntu14.04中编译安装maliit-0.94-qt4
- 机器学习(一)监督学习
- 内部类
- 【动态域名解析工具】tunnel,国内版的ngrok,花生壳可以睡觉了
- 跨IE和Chrome浏览器事件处理的解决办法
- Error : android studio 中mipmap引用.9图片出错
- 总结自定义控件时用到的移动View对象的方法
- 使用ant debug编译的时候出现如下错误
- linux 学习笔记----文件系统的实现------目录实现和文件实现