刚接触linux系统和Qt,这个编译环境的搭建确实让人很是烦恼。经过一个多月时间的接触,基本搞定了,虽然有些东西还是不是太明白,这在做个总结。
Qt的理解
首先得明白,qt就是一个C++类库。用的时候,我们是通过调用它的动态库来使用的。这就涉及一个问题了,在不同的系统上比如windows、linux、arm-linux上编译器不一样,所以我们就需要用对应的编译器编译Qt的源码,来获取对应编译器的版本。windows版本已经编译好了,所以我们就直接用了。
QtCreator不是一个编译器,而只是一个可视化开发环境,它通过qmake将相应的配置信息生成一个makefile文件。然后,通过makefile文件来调用相应的编译器来编译生成程序。
安装arm-linux编译器
这里我就不说了,因为有其他的人安装好了,我就没有再安装,等对这部分内容熟悉了,再去安装。我使用的是Ubuntu14.04系统感觉还是不错的,从同事那拷贝编译好的的文件CodeSourcery.tar.bz2解压在/usr/locall目录下,也可以放在其他目录下。这里提一下linux系统一切皆文件,所以编译好的东西,直接拷贝过来就能用了,不像windows上还有注册表什么的。
编译arm-linux版qt
这里也有同事编译好了,我也暂时没有去编译了。从同事那拷贝编译好的Trolltech.tar.bz2文件,解压到/usr/local目录下。
安装QtCreator
安装这个的方法似乎有很多,我选择了最简单的方法。直接在ubuntu软件中心下载。
相关配置
以上就把所有需要的东西准备齐了,下一步就是配置,通过对QtCreator的配置,增加一个制定Qt版本和编译器。
首先,我们增加一个环境变量,将arm编译器的路径添加进去。在终端输入:gedit /etc/profile 在最后添加下面两句:
export CROSS_COMPILE=arm-xilinx-linux-gnueabi-
export PATH=
好了,下面我们开始配置QtCreator。
增加一个编译器:点击tools-options-build and run-compilers,手动添加一个编译器,名字自己曲就叫做:arm-linux-g++;路径就是上面提到的那个PATH下面的arm-xilinx-linux-gnueabi-g++。
增加一个Qt版本:打开/usr/local/Trolltech/QtEmbedded-4.8.4-arm/bin/qmake。这里可能会出现“No qmlviewer installed”告警信息“这是因为没有安装qmlviewer或qmlviewer安装后的可执行文件没有处于qt-4.7.1/bin目录下,针对后一种情况只需从qmlviewer的安装目录(一般在/usr/bin目录下)里将qmlviewer, qmlpuppet, qmlprofiler, 和qmlplugindump复制到qt-4.7.1/bin目录下。而针对未安装qmlviewer的情况,安装方法如下:在ubuntu12.04中打开linux终端,输入以下命令:apt-get install qt4-qmlviewer即可。
最后,在kits中添加一个arm-linux的编译套件。选择刚才的qt版本和编译器,最后指定一下mkspecs的路径/usr/local/Trolltech/QtEmbedded-4.8.4-arm/mkspecs/qws/linux-arm-g++就可以了。
以上就是环境的搭建了,至于怎么编译,就暂时留在以后再去研究吧。