【OK210试用体验】+第十四篇☞主机linxu下qt编译环境的搭建 - 在线问答 - 电子技术论坛 - 最好最受欢迎电子论坛!

【OK210试用体验】+第十四篇☞主机linxu下qt编译环境的搭建

杨永胜 ( 楼主 ) 2015-9-15 17:05:37  只看该作者 倒序浏览
本帖最后由 iysheng 于 2015-9-15 17:05 编辑

qt环境的搭建,挺痛苦的,主要原因是qt有很多的版本,刚开始的时候,我对这些版本都很迷茫。本次,我最后使用的是如下两个版本:
qt-x11-opensource-src-4.5.3.tar.gz(X11版本)
qt-embedded-linux-opensource-src-4.5.3.tar.gz(嵌入式版本)这个版本的很重要,因为需要编译两次。(第一次在编译针对的是主机版本,另一次编译属于交叉编译)
中间我试过高版本的qt,例如:qt-everywhere-opensource-src-4.8.6.tar.gz  qt-everywhere-opensource-src-5.4.2.tar.gz(qt-opensource-linux-x86-5.4.2.run) 结果,都没有成功,主要原因是我使用的是Feodra10,我的gcc编译器版本太低了,编译高版本的qt会出现一些语法错误或者库版本低的提示,本次只是截取了一部分错误如下图:
最后还是在4.5.3版本上面安装成功了,安装之前,需要安装一些必备的模块(libx11-dev,libxext-dev ,libxtst-dev),如下:


这次截图,只是举一个例子,并没有把每次安装都截图。
安装完一些必要的模块之后,就要开始配置,编译,安装qt了。
  • 安装X11版
    解压qt-x11-opensource-src-4.5.3.tar.gz,进入解压目录,进行配置:./configure --prefix=/usr/qt(更改安装目录)

经过顺利配置后,执行gmake(经过漫长的等待,我等了将近两个小时),执行gmake install,最后就完成了。X11版已经安装到/usr/qt目录下了,如下图:


由于嵌入式开发,还需要qvfb(虚拟帧缓存),所以进入tools/qvfb目录,执行make然后将生成的qvfb,放到PATH环境变量可以找到的地方,就完成了。
编译安装qvfb的时候如下图:


顺利安装完成之后,就可以运行qvfb了,如下图:


说明,X11版本的顺利安装完成了。
    2。安装嵌入式版本的qt
同样解压qt-embedded-linux-opensource-src-4.5.3.tar.gz,进行第一遍配置,编译,安装。

配置的时候:./configure --prefix=/usr/qte -qvfb(这样才能支持qvfb)这次配置的时候,我截了一个图,如下:


配置完成后进行编译gmake(也是将近两个小时,,,)
最后安装gmake install
然后,我们可以测试一下,安装是否顺利成功:
进入/usr/qte/demos/books目录,
执行如下命令:./books -qws
结果如下:


至此,说明,我们顺利安装完了嵌入式qt的PC版,马上就要最后一步了:
3。编译qt的arm版同样在嵌入式版本的解压文件夹内,首先进行清除配置操作:
make coNFClean
接下来就重新开始配置了:
./configure --prefix=/usr/qtarm -embedded arm(声明arm版) -xplatform qws/linux-arm-g++
然后就开始编译了:
gmake
最后完成安装:
gmake install
至此安装部分可以说是结束了,接下来,需要的就是一些配置环境变量的操作。
测试:
我编写了一个简单的类似helloworld的基本显示程序:helloworld.cpp
  1. #include tion>
  2. #include

  3. int main(int argc, char *argv[])
  4. {
  5.         QApplication app(argc, argv);
  6.         QWidget wdg;
  7.         wdg.setWindowTitle("hello world");
  8.         wdg.show();
  9.         return app.exec();
  10. }
复制代码

把/usr/qte/bin/加入PATH环境变量中。
执行
qmake -project
qmake
make

生成helloworld可执行文件
运行:./helloworld -qws
结果如下图:


至此,说明环境搭建已经完成了,接下来就是变成实现自己需要的功能了,好像接下来的编程,真的很难啊,,,,,

0个回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /6 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 湘ICP备2023018690号 )

GMT+8, 2024-4-24 01:07 , Processed in 0.298018 second(s), Total 35, Slave 23 queries .

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表