中国企业建设协会网站,郑州树标网站建设,学校网站建设答辩,外贸网站源码 php最近在搭建Qt工程的编译服务器#xff0c;需要通过shell脚本执行工程的编译过程#xff0c;写在这里#xff0c;总结最近的工作。
1. 构建过程 以Windows为例#xff0c;在QtCreator中左侧选择“项目”便可以看到编译的指令和参数#xff0c;这些操作也会在我们点击“构建… 最近在搭建Qt工程的编译服务器需要通过shell脚本执行工程的编译过程写在这里总结最近的工作。
1. 构建过程 以Windows为例在QtCreator中左侧选择“项目”便可以看到编译的指令和参数这些操作也会在我们点击“构建项目”时执行执行的过程可以在“编译输出”的窗口中看到包含命令和编译的日志。 构建的步骤包含qmake和Make有时也会用到Clean。我使用的命令也都基本来自于这里。
2. 过程分析以MacOS为例Windows同理 Make和Clean是依据Makefile文件进行的而Makefile文件是qmake时生成的所以第一步是qmake那么在哪里执行qmake呢 第一次我的做法是这样子的
cd 源码目录qmake xxx.pro #Makefile生成在源码目录cd ..mkdir build-xxx-Desktop_Qt_5_14_2... #创建影子编译的目录
cd build-xxx-Desktop_Qt_5_14_2... #进入影子编译目录cp Makefile #从源码目录拷贝Makefile到影子编译目录/usr/bin/make -j8 #编译 这样的结果是编译时候找不到xxx.pro文件make失败。后经排查发现在Makefile中Project字段有记录qmake对于xxx.pro文件的相对路径所以先前qmake生成的Makefile文件中记录的xxx.pro是在当前目录中后来拷贝至影子编译目录必然找不到所需资源。 于是我将步骤修改为先创建影子编译目录在影子编译目录中qmakeMake……这样的顺序就是正确的。
mkdir build-demo-Desktop_Qt_5_14_2_MinGW_64_bit-Release
cd build-demo-Desktop_Qt_5_14_2_MinGW_64_bit-Release/Users/xxxx/Qt5.14.2/5.14.2/clang_64/bin/qmake -o Makefile /path/to/demo.pro -spec macx-clang CONFIGrelease CONFIGx86_64 CONFIGqtquickcompiler/usr/bin/make -j8
Windows相同只需把编译工具替换
D:\Qt\Qt5.14.2\5.14.2\mingw73_32\bin\qmake.exe
D:\Qt\Qt5.14.2\Tools\mingw730_32\bin\mingw32-make.exe
相关文章: