qt5linux編譯
『壹』 ubuntu qt5怎麼配置編譯器
方法一用軟體包管理器搜索你的版本例qt5然後把軟體包選定安裝方法二去下載linux版的qt解壓後執行其中的安裝文件
『貳』 linux下 qt程序源代碼如何編譯運行
仔細看裡面的源代碼,應該有一些文件里有連接到*.lib文件的,這是QT的動態庫文件把QT庫編譯成linux下的*.lib,然後編譯的時候,把lib文件放在同一文件夾,並且編譯命令加上-l *.lib或者放到根目錄下的lib目錄下也可以。這樣試一下。.o文件還需要經過連接才能生成可執行的文件。
『叄』 Qt的bug,在linux下無法直接編譯運行
1、在Linux下的命令行編輯程序:
[root@localhost root]# mkdir hello
//mkdir命令創建一個hello目錄
[root@localhost root]# cd hello
//cd命令切換到剛才創建的hello目錄
[root@localhost hello]# vi main.cpp
//在hello目錄中用vi創建一個main.cpp文件 將下面的代碼輸入到main.cpp文件中
#include <QApplication>
#include <QLabel>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QLabel *label = new QLabel(「Hello Qt」);
Label->show();
return app.exec();
}
2、然後在命令行編譯程序:
[root@localhost hello]# qmake –project
//執行qmake –project,因為目錄是hello,因此在hello目錄下生成一個與平台無關的項目文件hello.pro,
[root@localhost hello]# qmake hello.pro
//執行qmake hello.pro項目文件後,在hello目錄下生成一個與平台有關的Makefile文件。
[root@localhost hello]# make
//執行make進行編譯源代碼,並生成main.o目標文件及hello執行文件。
[root@localhost hello]# ./hello
//執行hello,就會彈出Hello Qt窗口,到此說明成功了。
『肆』 Qt5 在Linux 下的編譯,該怎麼處理
[wanglj@localhost testQT]$ make
g++ -o testQT main.o -L/opt/Qt5.1.1/5.1.1/gcc_64/lib -lqt-mt -lXext -lX11 -lm
main.o: In function `main':
/home/wanglj/testQT/main.cpp:6: undefined reference to `QApplication::QApplication(int&, char**, int)'
main.o: In function `QString':
/usr/include/QtCore/qstring.h:413: undefined reference to `QString::fromAscii_helper(char const*, int)'
main.o: In function `main':
/home/wanglj/testQT/main.cpp:7: undefined reference to `QLabel::QLabel(QString const&, QWidget*, QFlags<Qt::WindowType>)'
main.o: In function `~QString':
/usr/include/QtCore/qstring.h:869: undefined reference to `QString::free(QString::Data*)'
/usr/include/QtCore/qstring.h:869: undefined reference to `QString::free(QString::Data*)'
collect2: ld 返回 1
make: *** [testQT] 錯誤 1
但若直接用 qtcreator 打開編譯,則無錯誤
並且find -name libqt-mt* 也找不到其他版本的該文件
用qtcreator編譯好的可執行文件,也找不到連接該lib文件
[wanglj@localhost build-testQT-桌面-Debug]$ ldd testQT
linux-vdso.so.1 => (0x00007fff4ddff000)
libQtGui.so.4 => /usr/lib64/libQtGui.so.4 (0x000000397f000000)
libQtCore.so.4 => /usr/lib64/libQtCore.so.4 (0x000000397ea00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003978600000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007fda6a081000)
libm.so.6 => /lib64/libm.so.6 (0x0000003977a00000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003983a00000)
libc.so.6 => /lib64/libc.so.6 (0x0000003977e00000)
libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x000000397a600000)
librt.so.1 => /lib64/librt.so.1 (0x0000003978e00000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x0000003979200000)
libpng12.so.0 => /usr/lib64/libpng12.so.0 (0x000000397be00000)
libz.so.1 => /lib64/libz.so.1 (0x0000003978a00000)
libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x000000397ba00000)
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x0000003979e00000)
libSM.so.6 => /usr/lib64/libSM.so.6 (0x0000003985a00000)
libICE.so.6 => /usr/lib64/libICE.so.6 (0x0000003984e00000)
libXi.so.6 => /usr/lib64/libXi.so.6 (0x000000397ce00000)
libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x000000397d600000)
libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x000000397de00000)
libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x000000397da00000)
libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x000000397e200000)
libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x000000397e600000)
libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x000000397d200000)
libXext.so.6 => /usr/lib64/libXext.so.6 (0x000000397c600000)
libX11.so.6 => /usr/lib64/libX11.so.6 (0x000000397b600000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000003978200000)
/lib64/ld-linux-x86-64.so.2 (0x0000003977600000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x0000003983600000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x000000397c200000)
libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x000000397ae00000)
libXau.so.6 => /usr/lib64/libXau.so.6 (0x000000397aa00000)
------解決方案--------------------
INCPATH = -I/usr/lib64/qt-3.3/mkspecs/default -I. -I. -I$(QTDIR)/include
這一行看上去你調用的qmake不是5.1.1的。試試指定完整路徑運行qmake
/opt/Qt5.1.1/5.1.1/gcc_64/bin/qmake testQT.pro
『伍』 linux下 qt程序源代碼如何編譯運行。
.o文件不是可執行文件,而是編譯產生的目標文件,需要進一步鏈接產生可執行文件才能執行。
『陸』 linux下qt5安裝後打不開(沒反應),怎麼辦
用終端進入到qtcreator的安裝目錄,在其目錄下執行 /qtcreator,看看終端上顯示什麼錯誤。
『柒』 linux下執行qt程序怎麼編譯運行
qmake -project? 已經有.pro文件了! 直接運行qmake或者qmake snake.pro或qmake -makefile snake.pro.
重新解壓,按以下步驟做:
$ qmake
$ make
找到可執行文件(不是.o, 沒後綴的), 一般如果snake.pro中沒設置TARGET,默認生成的可執行文件為snake,輸入
.$ /snake
『捌』 arm-linux-gcc4.3.2 可以編譯qt5嗎
不同的內核版本對應著不同的編譯器版本,建議直接使用開發板推薦的編譯器
『玖』 linux下如何運行qt程序
圖形界面下,直接下載qtcreate,libqt4-dev,qt5defaule-dev 第一個是編輯軟體,後兩個是庫,如需其他另外找。命令行模式的話,不知道怎麼在沒有圖形界面下運行對話框的程序,命令行模式運行qt命令行格式的,直接qmake,make。就可以了。裡面那個沒有後綴的就是運行程序了,./程序名 運行 不行就加許可權 chmod +x ***.