linux平台命令行編譯
1.檢查一下qmake版本(可省略)
qmake -v
which qmake
2.具體步驟
以/home/michael/program_reference/hello.cpp工程為例,
代碼如下:
#include <QApplication>
#include <QLabel>
#include <QtDebug>
int main(int argc,char* argv[])
{
QApplication a(argc,argv);
QLabel label("hello");
label.show();
qDebug()<<"hell mq";
return a.exec();
}
2.1.在 hello.cpp所在目錄下,運行命令:qmake -project
hello.cpp 同目錄下有 hello.pro 文件被生成,它是與平台無關的工程文件。注:此處因為版本QT4和QT5的原因,需要修改hello.pro文件,具體修改內容如下:在.pro文件中加入以下代碼:
QT += widgets core gui
2.2. 在 hello.cpp所在目錄下,運行命令:qmake hello.pro
同目錄下有 Makefile 文件被生成( Makefile 是指導編譯器編譯源代碼的配置文件,在其目錄下輸入 make 命令 (nmake 在 win32,vc6 環境 ) 就可以完成編譯)。2.3.在 hello.cpp所在目錄下,運行命令:make
同目錄下有 hello,hello.o 兩個文件被編譯生成。其中 hello 就是在當前 Linux 系統下使用 Qt 編譯生成的可執行文件了。
windows平台命令行編譯
注:此方法未經本人證實
1、打開環境變量設置窗口,編輯 PATH 變量,添加如下內容:
c:/Qt/2010.02.1/bin/;
c:/Qt/2010.02.1/qt/bin/;
c:/Qt/2010.02.1/mingw/bin/
2、打開環境變量設置窗口,添加環境變量QTDIR:
變量名:QTDIR
變量值:C:/Qt/2010.02.1/qt
3、打開環境變量設置窗口,添加環境變量QMAKESPEC:
變量名:QMAKESPEC
變量值:win32-g++
4、現在已經可以進行命令行模式的編譯了,例如:
a、建立一個空文件夾 hello,然后在其中建立一個空文件 hello.cpp,編輯並保存此文件。
#include QApplication>
#include QPushButton>
int main(int argc,char* argv[])
{
QApplication app(argc,argv);
QPushButton * bt = new QPushButton("quit");
QObject::connect(bt,SIGNAL(clicked()),&app,SLOT(exit()));
bt->show();
return app.exec();
}
b、在hello目錄下,命令行輸入運行 qmake -project,生成 hello.pro
c、在hello目錄下,命令行輸入運行 qmake hello.pro,生成了 makefile
d、在hello目錄下,命令行輸入運行 mingw32-make,生成了 hello.exe(位於 Debug 目錄下)
e、進入 Debug 目錄,執行 hello.exe