qt下编译安装592
1. ubuntu下qt如何编译.ui文件
登录/注册
linux/Ubuntu下 静态编译Qt程序
转载205 阅读
mb5ff5917b5bbc5
2017-07-28 07:07:00
关注
一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的。会提示缺少……库文件之类的错误。这就是动态编译的结果。
但是如果我们想编译一个程序,这个程序在发给别人后,他们可以直接打开,而不需要特别地去先安装Qt库,那就需要采用静态编译了。
在Linux下如何静态编译Qt程序呢?
首先需要先安装静态编译的Qt,也就是静态编译Qt程序首先是需要一个静态编译安装的Qt
1、下载源安装程序,如 qt-x11-opensource-src-4.5.1.tar.gz
2、解压到某一目录
3、cd 进入解压后的目录,命令:
./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.5.1_static
./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.5.1_static
参数-static 指的是要采用静态编译Qt的方法
参数-release指的是只编译release版本的库
参数-qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg 是更好确定Qt编译出的程序能在目前不知的系统下运行。
参数-nomake demos -nomake examples 指的是不编译demos和examples
参数-qt-sql-sqlite 如果没有这个参数,configure的时候,可能会提示sqlite 有问题而中止。
参数 -prefix /usr/local/Trolltech/Qt-4.5.1_static 指明静态编译的Qt安装的目录,命名Qt-4.5.1_static是为了区别动态编译安装的Qt,因为如果没有这个参数,安装时会覆盖之前动态编译安装的Qt(如果有的话)。
4、没问题后
make
5、make没问题后再
sudo make install
6、增加(或改变)环境变量:
在你home目录下你的的名字的目录中,在.profile文件中追加(或改变)如下环境变量:(为Qt设置一些特定的环境变量,这个很重要!.profile文件是隐藏的,可在你的名字目录下,按Ctrl+H显示所有文件查看到)
QTDIR=/usr/local/Trolltech/Qt-4.5.1_static/
PATH=$QTDIR/bin:$PATH
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR PATH MANPATH LD_LIBRARY_PATH
QTDIR=/usr/local/Trolltech/Qt-4.5.1_static/
PATH=$QTDIR/bin:$PATH
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR PATH MANPATH LD_LIBRARY_PATH
7、重启
8、在终端测试一下qmake
成功的话,下来用qmake编译出的Qt程序就是采用静态编译的。这时你会发现,静态编译出来的程序大小变大了相当多。
静态编译与动态编译的区别
动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。所以其优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。缺点一是哪怕是很简单的程序,只用到了链接库中的一两条命令,也需要附带一个相对庞大的链接库;二是如果其他计算机上没有安装对应的运行库,则用动态编译的可执行文件就不能运行。、
静态编译就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。所以其优缺点与动态编译的可执行文件正好互补。
2. qt编译问题
QT默认安装后 在options 下有 QT4 选项 有QT versions 需要设置下QT的目录
QT的编译采用MinGW的编译器(开源版)MinGW是GCC的Win移植版.
Could not find make command: mingw32-make.exe in the build environment 意思是找不到MinGW的make工具,请将MinGW的bin目录加入系统的path变量中,在options中有调试器(debug)中选择mingw调试器gdb的位置
(位于MinGw bin目录下)
3. Qt编译器如何安装
直接下载一个安装包安装即可,没其他需求
http://download.qt.io/archive/qt/5.7/5.7.0/
如果是vs版本的话需要安装vs编译工具,如果你是新手,建议下载Mingw的版本,直接安装个QtCreator就行了
4. 如何安装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:
注意此处一定要关联正确,关联错误会导致,可以编译运行,但是不能进行调试。
5. ubuntu下qt安装问题
直接下载QT SDK1.1就好了 自动安装
6. qt5.4 源码编译安装问题
在配置的时候加上 -nodbus,希望采纳,因为我编译的时候也遇到了,加上之后就好了。
7. 如何在树莓派上安装 QT 编译器
首先我需要的开发工具Qt Creator 先从终端单独下载:
sudo apt-get install qt4-dev-tools
之后安装QT CREATOR 编译器:
sudo apt-get install qtcreator
之后继续安装编译环境:
sudo apt-get install gcc
sudo apt-get install xterm
sudo apt-get install git-core
sudo apt-get install subversion
该版本基于Qt Creator 2.5 with Qt 4.8.1 32 bit
存在问题:没有工具链。
我们只能编译远程嵌入式设备,这不是这里的情况,因为我们是PI,而不是远程访问它。
我添加了一个gcc工具链
工具/选项>构建和运行>标签工具链>按钮添加 选择GCC
然后设置编译器路径:/usr/bin/arm - linux - gnueabihf - gcc - 4.6
调试器:/usr/bin/gdb
Mkspec:默认
Qt Creator似乎发现我们将部署在一个遥远的目标。
为了解决这个问题:
去帮助>菜单插件
取消设备支持远程linux >
重启Qt的创造者
去工具>选项选项卡> >构建和运行> Qt版本添加“/ usr / bin / qmake-qt4”
然后,它将显示为一个桌面项目在项目向导,而不是嵌入。