qt编译环境搭建步骤
‘壹’ 如何使用qt搭建ios开发环境
开始编译安装:
一、X11编译:
1.进入qt-x11-opensource-src-4.5.0源码目录。
./configure -no-openssl
在我这里必须加上-no-openssl选项,否则在make过程中,编译到ssl时会报错。出错信息为:
ssl/qsslsocket_openssl_symbols_p.h:264: error: variable or field ‘q_sk_free’
declared void
ssl/qsslsocket_openssl_symbols_p.h:264: error: ‘STACK’ was
not declared in this scope
ssl/qsslsocket_openssl_symbols_p.h:264: error:
‘a’ was not declared in this scope
ssl/qsslsocket_openssl_symbols_p.h:265: error: ‘STACK’ was not declared in this
scope
ssl/qsslsocket_openssl_symbols_p.h:265: error: ‘a’ was not declared
in this scope
……
……
默认安装路径为
/usr/local/Trolltech/Qt-4.5.0。可用--prefix 指定其他安装路径。
2. gmake
# linux下一般可直接用make代替gmake。如果要加快编译速度,就加上 -jx ,x表示最大的线程数。
3.
gmake install
二、qt-embedded-x86编译:
1.进入qt-embedded-linux-opensource-src-4.5.0-x86源码目录。
./configure -prefix
/usr/local/Trolltech/QtEmbedded-4.5.0-x86 -embedded x86 -no-openssl -qt-gfx-qvfb
-qt-kbd-qvfb -qt-mouse-qvfb
先后配置了安装目录、嵌入式架构(x86)。同时也跟X11版本一样,配置了
-no-openssl,没有这一项的话,make的过程中会出现跟编译X11时一样的错误。再后面的几项是为了更好的配合qvfb,网上说如果没有这几项,安装好qt-embedded-x86后想在qvfb上调试程序时,会出现类似下面的错误:
Error opening buffer device /dev/fb0QScreenLinuxFb::connect: No such
file or directory
2. gmake
跟x11版一样
3. gamke
install
三、qt-embedded-arm:
与前面两个不同,在编译arm版本的qt-embedded前,必须确认已经安装了交叉工具链,编译过程中要生成许多arm架构的库,所以必须有arm-linux-gcc、arm-linux-g++等工具。我用的是友善提供的arm-linux-gcc-4.5.1版本。
1. 进入qt-embedded-linux-opensource-src-4.5.0-arm源码目录。
./configure -prefix
/usr/local/Trolltech/QtEmbedded-4.5.0-arm -embedded arm -no-openssl
-qt-libpng
指定了安装路径、嵌入式架构。同时也跟X11版本一样,配置了
-no-openssl,没有这一项的话,make的过程中会出现跟编译X11时一样的错误。
另外,还增加了一项,
-qt-libpng,这个选项应该是关于png相关的库,指定用qt自带的png库。如果没有这一项,我这里会出现如下错误:
image/qpnghandler.cpp: In member function 'virtual QVariant
QPngHandler::option(QImageIOHandler::ImageOption) const':
image/qpnghandler.cpp:950:35: warning: 'png_info_struct::width' is deprecated
(declared at
/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:639)
image/qpnghandler.cpp:950:35: warning: 'png_info_struct::width' is deprecated
(declared at
/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:639)
image/qpnghandler.cpp:950:55: warning: 'png_info_struct::height' is deprecated
(declared at
/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:640)
image/qpnghandler.cpp:950:55: warning: 'png_info_struct::height' is deprecated
(declared at
/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:640)
make[1]: *** [.obj/release-shared-emb-arm/qpnghandler.o] 错误 1
make[1]:
*** 正在等待未完成的任务....
make[1]: Leaving directory
`/root/qt4.5.0/qt-embedded-linux-opensource-src-4.5.0-arm/src/gui'
make:
*** [sub-gui-make_default-ordered] 错误 2
看起来像是我的交叉工具链跟这个QT版本匹配的不太好,Qt好像不太兼容交叉工具链的png.h头文件中定义的数据结构。加上 -qt-libpng
可解决此问题。
四、qvfb:
这时QT就已安装成功。但是还需要额外安装qvfb。
进入qt-x11-opensource-src-4.5.0源码包目录,然后
cd tools/qvfb
在qvfb源码目录下运行
make
会在qt-x11-opensource-src-4.5.0/bin下生成qvfb,我们将它至/usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin下即可。
end:
到这里,QT的开发环境基本就搭建好了,利用 qt-embedded-x86 和 qvfb
工具可以很方便的调试QT程序,调试好的程序再经 qt-embedded-arm
编译就可在开发板上运行(还有个小问题,我现在编译好的QT程序虽然可以在开发板上运行,但是运行时触摸屏不能用,只能用USB鼠标控制,想支持触摸屏貌似还需要移植tslib库,等我折腾完了再回来把相关内容补充上)。
‘贰’ 如何安装qt creator编译器
安装qt creator编译器步骤:
下载安装MinGW
从MinGW网站下载mingw
默认安装到C盘根目录下:D:MinGW,可以换到自己喜欢的路径。安装时选择C和C++ compiler ,默认只选中了C编译器。因此一定要注意根据自己的需求悬着编译器。如果选错需要删除重新安装。
下载安装完之后设置环境变量设置环境变量(此处高能)。a. 鼠标右击桌面“计算机”(WindowsXp是“我的电脑”)->“属性” b. WindowsXP时,在新弹出的属性窗口,选择“高级”->“环境变量”。 Windows7时,在新弹出的属性窗口,选择左侧的“高级系统设置”,在新弹出的属性窗口,选择“高级”->“环境变量”。 c. 把MinGW安装目录的bin目录的路径追加到PATH里,然后确定。 注意:箭头指的两个分号一定要加上并且分号一定要在英文输入模式下输入
下载安装配置QT libraries
Qtlibraries可以到网上去搜索qt-opensource-windows-x86-mingw482-4.8.6-1.exe,但注意一定要找正式版的。
设置安装路径为D:Qt4.8.4,安装时需要指定MinGW的安装路径为D:MinGW,这里千千万万要注意,QT类库安装的时候是需要和MinGW进行关联的。如果找不到后面就悲剧了啊!!!!
修改环境变量:计算机->属性->高级系统设置->环境变量
安装完后需要把D:Qt4.8.4in目录添加(原来的别删了,以“;”做间隔)到系统变量的Path路径中。
并新建系统环境变量QMAKESPEC,把值设置为D:Qt4.8.4mkspecswin32-g++;
还要新建系统环境变量QTDIR,值为D:Qt4.8.4
安装成功后打开QT设计师主界面:
打开Qt 设计师 开始->Qt by Digia v4.8.4 ->Designer 。
如果Qt lib 安装成功! 关掉Qt Designer
Qtcreater可以到网上去搜索qt-creator-opensource-windows-x86-3.1.2.zip
安装:需要把C:Qtqtcreator-2.7.1in目录添加到系统变量的Path路径中。如果不设置系统环境变量,则创建工程时kit不能设置成功,并且可创建的工程类型也会受到限制。
设置QT Creator构建和运行配置项 打开QT Creator,选择菜单“工具/选项”,选择左边的"构建和运行",再选择“Qt版本”选项卡,点击“添加”,qmake路径:D:Qt4.8.4inqmake.exe。
还需要设置Compilers(编译器)选项卡中的“手动设置”项的编译器,Name设置为MinGW,编译器路径设置为D:MinGWinmingw32-g++.exe
新增构建套件,编译器和QT版本选择自己新增的
然后就可以正常的创建工程了。
打开Qt creater 后打开菜单栏 工具->选项。配制
安装QT调试工具:
debugger工具使用对应的MingW下面的Gdb.exe:
注意此处一定要关联正确,关联错误会导致,可以编译运行,但是不能进行调试。
‘叁’ 如何创建并配置Ubuntu下QT编译器
操作系统是 Ubuntu 8.04,使用目前最新版本的QT 4.4.0,安装起来即为简单,只要运行以下命令就行:
sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer
注意在这个版本的软件包中,qt4-dev-tools 包含了Qt Assistant及Qt Linguist等工具,因此不需要单独安装这两个工具。其它的,qt4-doc 是帮助文档,包含了Qt中各个类库的详细说明以及丰富的例子程序,可以使用Qt Assistant 工具来打开阅读。qt4-qtconfig 是配置Qt环境的一个对话框,一般默认就行了,很少有必要去更改。qt4-demos 包含很多可以运行起来的可执行文件以及源代码。qt4-designer是用来设计GUI界面的设计器。
为了连接Mysql数据库,需要安装连接MySQL的驱动程序:
sudo apt-get install libqt4-sql-mysql
比起在Windows下安装和配置Qt的MySQL驱动来说,简直太方便了。如果还需要其它的没有默认安装的Qt库,可以在命令行输入 sudo apt-get install libqt4- 然后按tab键自动补全,就会列出所有以libqt4- 开头的软件包。
这些都可以使用一个命令搞定,而不需要自己从源码开始编译。在记不准或不知道名字的情况下,使用tab键列出所有可选的软件包是一个很实用的小技巧。
在我的项目中,还需要画一些数据曲线和统计图表等,而第三方的QWT库提供了这些功能。同样,只需要一个命令即可完成安装:
sudo apt-get install libqwt5-qt4 libqwt5-qt4-dev
这时,打开Qt Designer,就会发现左边的Widget列表里面多了“Qwt Widget”这一组。
最后,关于集成开发环境我觉得QDevelop很不错,它跟Qt Designer结合的很好,而且有提示类成员函数的功能。运行以下命令安装:
sudo apt-get install qdevelop
这样,使用Qdevelop编写代码和编译、调试,使用Qt Designer设计界面,开发效率较高。
‘肆’ 如何在Windows下构建ARM Linux QT开发环境
在PC上,需要得到两个版本的Qt,分别是:Qt-4.5.2和QtEmbedded-4.5.2-arm。前者包括了QtDesigner等基本工具,用于在PC上对程序的开发调试,使能确保程序放到板子上之前就符合设计的要求;然后用后者的库将调试好的程序编译成能在arm-linux平台上运行的程序。
Qt-4.5.2用从网上下载到的qt-x11-opensource-src-4.5.2.tar.gz编译后安装得到;QtEmbedded-4.5.2-arm用qt-embedded-linux-opensource-src-4.5.2.tar.gz编译后安装得到,Qt-embedded-linux-opensource-src-4.5.2.tar.gz还可以编译成QtEmbedded-4.5.2-X86,但不需要。在编译qt-embedded-linux-opensource-src-4.5.2.tar.gz之前,必须准备好arm-linux-gcc交叉编译工具,用的是arm-linux-gcc-3.4.1。
所以先要准备好的软件包有:
Pc的操作系统是:LINUX-ubuntu8.04。
下面是具体编译安装过程:
1、Qt-4.5.2的获得将qt-x11-opensource-src-4.5.2.tar.gz复制到目录:/home/chh/Project/qt,
2、然后解压:
#tarzxvfqt-x11-opensource-src-4.5.2.tar.gz
得到一个新目录:qt-x11-opensource-src-4.5.2
cd进入这个目录,准备开始编译。
3、在终端中这样操作:
#./configure–qvfb//编译配置,此过程大概历时几分钟;#make//正式编译,过程漫长,大概2个多小时;#cdtools/qvfb//进入此目录,准备对它进行编译#make//编译,几分钟#cd../..//回到qt-x11-opensource-src-4.5.2主目录,准备安装#makeinstall//安装,十几分钟吧;
4、此步必须以root身份完成,否则无法建立目录
5、可以在/usr/local/下看到一个Trolltech目录,进入该目录发现Qt-4.5.2目录已经出现,进入里面的bin目录,Designer等工具已经可以使用了。
6、编译过程相当费时,所以可以直接拷贝已经编译过的源码,直接makeinstall。
7、至此,Qt-4.5.2的安装已经顺利完成。
QtEmbedded-4.5.2-arm的获得
在编译安装qt-embedded-linux-opensource-src-4.5.2之前,必须先配置好arm-linux-gcc,将arm-linux-gcc-3.4.1.tar.bz2解压到目录:/usr/local下,此时local下出现一个名为arm的目录,然后配置好环境变量:在/etc/profile添加一句:exportPATH=$PATH:/usr/local/arm/3.4.1/bin,保存后#source/etc/profile一下,让它即时生效。否则下面的编译过程会提示找不到arm-linux-gcc命令。现在可以开始编译了:
将qt-embedded-linux-opensource-src-4.5.2.tar.gz复制到目录:/home/chh/Project/qt,然后解压:#tarzxvfqt-embedded-linux-opensource-src.tar.gz,得到新目录qt-embedded-linux-opensource-src-4.5.2。
进入qt-embedded-linux-opensource-src-4.5.2目录,首先进行configure。这里的参数很重要,必不可少的是-embeddedarm,所以最简单的配置信息可以这样:
./configure-embeddedarm
然后回车,就开始configure了,参数设置和参考文章一样,裁减了很多,减少了编译时间:
./configure-release-shared-fast-no-largefile-qt-sql-sqlite-no-qt3support-no-xmlpatterns-no-mmx-no-3dnow-no-sse-no-sse2-no-svg-no-webkit-qt-zlib-qt-gif-qt-libtiff-qt-libpng-qt-libmng-qt-libjpeg-makelibs-xplatformqws/linux-arm-g++-nomaketools-nomakeexamples-nomakedocs-nomakedemo-no-nis-no-cups-no-iconv-no-dbus-no-openssl-embeddedarm-little-endian-qt-freetype-depths16,18-qt-gfx-linuxfb-no-gfx-transformed-no-gfx-multiscreen-no-gfx-vnc-no-gfx-qvfb-qt-kbd-usb-no-glib
之后就可以编译了,#make,漫长等待后再#makeinstall。Makeinstall还是需要root权限。
完成后,在/usr/local/Trolltech下多了一个目录:QtEmbedded-4.5.2-arm。
‘伍’ 如何在ubuntu下搭建qt交叉编译环境
第一步,你需要下载QT源代码(4.8的编译比较容易),然后通过 ./configure (参数自己定,不懂看readme)接下来就是在QT CREATE里面配置了,如下:
工具-->选项--->构建和运行
1. 编译器: 点击添加: "名称"随意
"编译器路径" **/arm-none-linux-gnueabi-g++
找到你的编译器,我这里是用ARM的
其他不填也行.
2.Qt Versions: 点击添加:找到通过源码编译好的qmake文件. 例如:/usr/local/Qt-4.8.6/bin/qmake
3.构建套件: 点击添加: "名称"随意, 重点是 "编译器"跟"QT版本", 分别选择刚刚添加的两项.
调试器:如果是桌面环境那就选桌面的, 如果是在嵌入式中的,那不要也可以..
如果是交叉编译,那只能编译,不能运行...
‘陆’ QT环境怎么搭建
开发Qt界面,刚开始学写的时候可以在官网上下载Qt SDK,要想实际开发最好用VS+Qt插件
只需在官网下载两个插件qt-vs-addin、qt-win-opensource安装顺序没要求,安装完成后,在VS中就可以看到Qt了,进去之后你也可以使用Qt设计师进行界面的设计和开发!我用了很久了,祝你好运
‘柒’ 如何搭建vs2015和qt5.8的环境
1. 首先,我们到网站下载源码包,加压源码包到磁盘。
2. 由于编译QtWekbit需要ICU andANGLE 库,ICU库需要单独下载和编译,从下载ICU4Cversion 56.1并解压到磁盘,目录位置参见随后说明。
3. 在Qt 5.5.1的源码包中还存在一个BUG,如果直接编译的话在编译QT3D模块的时候会报没有找到Zlib.h的错误而中断编译,所以参照如下提示修改qt-everywhere-opensource-src-5.5.1\qt3d\src\3rdparty\assimp目录下的assimp.pri文件。可参考地址。
4. 在编译QT5.5.1之前还需要安装配置一下的工具和环境:
5. 经过上面的步骤可以开始进行编译ICU4C version 56.1和QT5.5.1的源码了
6. 如果以上的配置都正确的话开机让机器编译几个小时后就可以在目标路径下生成QT5.5.1的运行文件。
‘捌’ QT编译环境搭建步骤
我也曾有过你这个困惑。在linux里qt的开发环境有3种:嵌入式、qvfb和x11,编译qt源码可以得到这三种环境。编译qt源码有三个步骤:配置(configure)、编译(make)、安装(make install)。三种环境仅仅在配置时有区别,网上很容易搜到具体做法。
‘玖’ 求助win7 64位+Qt5.2.1+qt creator环境如何搭建
一、安装 1上下载一个Windows环境下可使用的Qt原码包,如qt-win-opensource-src-4.3.4.zip,并解压缩(如解压缩至F:\Qt-4.3.4)2. 添加系统环境变量,在PATH中添加qt的bin路径(F:\Qt-4.3.4\bin),添加新的变量QTDIR(QTDIR=F:\Qt-4.3.4),再添加新变量QMAKESPEC=win32-msvc。3. 运行cmd打开一个dos窗口,进入vc6的vc98\bin中执行vcvars32.bat,4. 进入qt主目录,执行:configure,选‘y’,等待5. 再执行nmake,等待,时间比较长 二、使用 先用记事本或者VC写一段Qt程序,如hello.cpp#include <QApplication>#include <QPushButton>int main(int argc, char* argv[]){ QApplication app(argc, argv); QPushButton hello("Hello world!"); hello.resize(400,300); hello.show(); return app.exec();}放在E盘的hello文件夹中(工作目录可以随意选择),然后执行编译链接过程,具体如下:E:\>hello>qmake -project //意思是创建一个和平台无关的项目文件E:\>hello>qmake hello.pro //根据上一步产生的项目文件创建一个平台特定的makefileE:\>hello>qmake -tp vc hello.pro //通过hello.pro创建一个VS的项目文件E:\>hello>nmake //编译链结程序在生成XXX.pro的工程文件后,可以执行qmake -tp vc XXX.pro生成vc的XXX.dsp文件,就可以在vc中进行qt文件的编译和操作了,很方便地在不同系统中进行程序移植了
‘拾’ 请教,如何在arch下建立qt编译环境的问题
一、安装G++环境
sudo apt-get install build-essential
另外的一些相关环境。如果不安装,一些qt的组件是无法正常编译的,例如openGL
sudo apt-get install libx11-dev libxau-dev libxaw7-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev
sudo apt-get install libxext-dev libxfixes-dev libxfont-dev libxft-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev
sudo apt-get install libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev
sudo apt-get install libglib2.0-dev
sudo apt-get install libssl-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install libcups2-dev
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev
sudo apt-get install libgstreamer0.10-dev
二、解压代码
tar zxvf qt-everywhere-opensource-src-4.8.4.tar.gz
解压完进入解压后的源代码文件夹
三、执行。/configure生成makefile
。/configure -prefix /usr/local/Qt-4.8.2
(上面指定的这个目录/usr/local/Qt-4.8.2 ,就是make install 后的安装目录)
下面出现对话框选择open source edition.这是自由版。输入yes接受协议。
(1)如果你的机器各种库文件完整,经过一小会,配置完成,会出现以下信息
Qt is now configured for building ,just run ‘make’
Once everything is built , you must run ‘make install’
Qt will be installed into /usr/local/Qt-4.8.2
To reconfigure ,run ‘make confclean’ and ‘configure’
说明Makefile文件生成成功
(2)如果出现以下信息
Basic XLib functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in /home/gcgily/qt-everywhere-opensource-src-4.8.4/mkspecs/linux-g++
还是老办法,以不变应万变。进config.test/x11/xlib 执行make命令,看出错信息
g++ -Wl,-O1 -o xlib xlib.o -L/usr/X11R6/lib -lXext -lX11 -lm
/usr/bin/ld: cannot find -lXext
看到了吧,g++在/usr/X11R6/lib下,找不到libXext.so呢。
其原因就在于需要安装libX11的开发包,在Ubuntu/debian里包名都是libX11-dev
根据以往的经验,在。/configure前主动装好下面3个包,基本上就万事大吉了
sudo apt-get install libX11-dev libXext-dev libXtst-dev
安装所需到包后再重新。/configure即可生成Makefile文件
如果出现:Project ERROR: Package gstreamer-app-0.10 not found,则执行以下命令
apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev如果出现 : g++: error: unrecognized command line option ‘-fuse-ld=gold’
这是Qt的一个bug:https://bugs.webkit.org/show_bug.cgi?id=89312
在装有gold linker的系统里,编译脚本会加入-fuse-ld=gold选项,但这个选项gcc是不支持的。解决办法是移除该选项,找到文件src/3rdparty/webkit/Source/common.pri,屏蔽QMAKE_LFLAGS+=-fuse-ld=gold。
#
QMAKE_LFLAGS+=-fuse-ld=gold
四、编译QT
执行make命令,需要2个小时。
五、安装QT
运行sudo make install命令。需要几分钟时间,默认安装到/usr/local/Qt-4.8.2. 运行/usr/local/Qt-4.5.3/bin/designer ,若能启动QT,说明QT已经安装好了。
六、设置环境变量
更改用户环境变量
gedit /home/username/.bashrc
添加:
export QTDIR=/usr/local/Qt-4.8.2
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
更改包括root用户的环境变量
sudo gedit /etc/profile (此处profile文件要更改一下权限才能写入)
添加:
export QTDIR=/usr/local/Qt-4.8.2
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
七、测试环境变量
重启测试环境变量:
qmake -v
显示版本信息:
QMake version 2.01a
Using Qt version 4.8.2 in /usr/local/Qt-4.8.2/lib
which qmake
显示安装位置信息:
/usr/local/Trolltech/Qt-4.8.2/bin/qmake
环境变量设置成功。
代码:
如果需要在Qt中引用其他的包以及库文件,则使用:
INCLUDEPATH += /usr/local/include/
INCLUDEPATH += /usr/local/include/Eigen
INCLUDEPATH += /usr/local/include/boost
INCLUDEPATH += /usr/local/include/CGAL
LIBS += -L/usr/local/lib/ -lgmp
LIBS += -L/usr/local/lib/ -lmpfr
其中LIBS参数中 -l后只能接特定某一个库文件,且如果该文件为 “libxxx.so“,则-l后只接“xxx”。
上面就是搭建Qt开发环境的方法介绍了,作为一个良好的跨平台开发工具,Qt能够很好的运行于更大主流系统,拥有丰富的API等。