从Makefile中删除不必要的目标

时间:2011-11-10 09:39:11

标签: qt makefile qmake

是否有自动方式从Makefile中删除不必要的目标? 我使用qmake生成的,但我在机器上运行它们没有QT。由于qmake生成的Makefile,它包含与QT相关的目标,例如1)“Makefile:”,它们调用“$(QMAKE)”2)“qmake:”;以及依赖项中的QT文件,例如“/usr/share/qt4/mkspecs/common/g++.conf”等。

Makefile: my_project.pro /usr/share/qt4/mkspecs/linux-g++/qmake.conf /usr/share/qt4/mkspecs/common/g++.conf \
    /usr/share/qt4/mkspecs/common/unix.conf \
...
$(QMAKE) -spec /usr/share/qt4/mkspecs/linux-g++ -unix CONFIG+=debug -o Makefile my_project.pro
...
qmake:  FORCE
@$(QMAKE) -spec /usr/share/qt4/mkspecs/linux-g++ -unix CONFIG+=debug -o Makefile my_project.pro

我试图手动删除这些目标,而不是用它们成功编译项目。问题是,是否有一种简单的自动化方式?

1 个答案:

答案 0 :(得分:1)

不,没有。如果您使用的是qmake,则表示您希望在安装了qt的计算机上使用它。据我所知,您不应该使用Makefile共享您的源代码,而只使用.pro文件。任何为自己编译的人都应该在make之前调用qmake(如果使用visual,则调用'nmake')。

如果您根本不使用qt,并且仅使用qmake来生成Makefile,那么还有其他选择(尽管不像qmake那么简单,我承认),例如cmake或autoconf / automake。