我正在使用Qt(C ++库/框架)开发一个应用程序。使用QT-Creator我可以很好地编译我的项目,并且build目录生成所需的可执行文件就好了。但是,我正在尝试自动化我的问题并使用Apache ANT。但我遇到了以下问题。
以下是命令行的输出:
build.mac.64:
[echo] Building for Mac
[echo] Updating destination path
[exec] Project WARNING: No .qmake.cache is present. This significantly slows down qmake with this makespec.
[exec] Project WARNING: Call 'cache()' in the top-level project file to rectify this problem.
[exec] make: Nothing to be done for `first'.
[exec] cp: ./build/mac.64/settings.ini: No such file or directory
[exec] Result: 1
[echo] Reverting destination path
我不确定为什么它不编译可执行文件。
以下是我的目标的样子:
<target name="build.mac.64">
<echo>Building for Mac</echo>
<exec executable="qmake">
<arg value="myproject.pro"/>
<arg
value="-r"/>
<arg value="-spec"/>
<arg value="macx-clang"/>
<arg value="CONFIG+=x86_64"/>
</exec>
<exec executable="make" />
<exec executable="cp">
<arg value="./settings.ini"/>
<arg value="${default.build.dir.mac.64}/settings.ini"/>
</exec>
</target>
知道我哪里错了吗?
答案 0 :(得分:35)
感谢提示家伙。我意识到我做错了什么。 QT-Creator实际上是默默地执行前两步。
所以,我忽略的关键是你必须首先进入构建目录,然后调用qmake,make等...而且如果构建已经编译了文件,则抛出该错误。我只需要确保清理构建目录以编译所有新内容。
答案 1 :(得分:17)
在终端窗口中
答案 2 :(得分:7)
如果编译现有项目,qmake -project实际上是错误的,请参阅“qmake --help”。
qmake -makefile
make
如果它是一个大项目,“make -j4”或类似的。