我有一个Qt项目文件(.pro)和一个Makefile(自行编写)
项目文件仅用于编辑IDE:中的源文件
/home/project/
./src/fooApp.pro
TEMPLATE=app
CONFIG-=qt
TARGET=fooApp
SOURCES+=...
HEADERS+=...
./src/main.c
./src/foo.c
./src/foo.h
./build/Makefile
我想通过IDE构建项目QT Creator 3.5.1
因此我想在Makefile上调用make。
在构建过程中,我总是收到一个错误,即找不到Makefile,因此没有触发任何构建
解决方案是始终首先调用qmake,然后进行(即使Makefile仍然存在并且自定义设置make -C ../build in /home/project/
)
有人能解释一下,为什么不能忽略qmake并直接在现有的Makefile上调用make?
(本项目未使用Qt库)
问候
这很容易,我经常使用makefile only项目,因为我喜欢qt创建者作为IDE。在IDE中,转到左侧的项目选项卡。
选择该页面顶部附近的"构建"选项卡,看起来像:(build | run)
。
在构建步骤中:
- 删除qmake构建步骤,方法是将鼠标悬停在该步骤上,然后单击出现的X
-
编辑
build directory
,使其与生成文件位于同一目录。注意:您必须单击旁边的
shadow build
复选框才能启用它。 - 删除你不想要的任何其他步骤(实际上现在就全部删除)
- 添加新步骤
make
步骤。它将尝试使用默认的make,但如果您愿意,可以覆盖它。还要添加任何参数,如debug
或-j4
等
然后完成:)
下次点击build时,它将简单地调用make命令。
注意:您需要对您拥有的任何其他配置(如发布、调试等)执行相同的操作。您也可以添加更多配置来执行其他make选项(如果您有),例如make doxygen
或类似的。。。
刚刚记住你也可以:
- 我不知道为什么,但当我测试它时(就像OP一样),你似乎不能只设置一个参数为
-C ../
的make
步骤,它似乎想先在"构建目录"中查找
我倾向于使用构建位置,因为它是IDE的一个不错的功能。
注意作为makefile IDE的较新版本的Qtcreator的一个问题是,您无法与其他人共享您的构建设置(即无法配置和控制他们),因为他们已锁定到您的PC配置文件中。。。长话短说。。。但这是非常可悲的,我不再使用qtcreator的原因之一。