如何在mac os x上使用g ++编译一个简单的Qt和c ++应用程序?

时间:2009-01-13 22:36:20

标签: c++ macos qt makefile qmake

我正在尝试将Qt用于学校的项目,但遇到了问题。我开始关注教程,我遇到了Makefile问题。大多数教程都说要运行qmake -project,然后是qmake,最后是make。但是当我尝试这个时,我遇到了错误make: *** No targets specified and no makefile found. Stop.我真的不太了解Makefiles。有人可以帮助我指出正确的方向吗?

5 个答案:

答案 0 :(得分:24)

OS X上的qmake创建Xcode项目文件。您可以使用以下命令创建Makefile:

qmake -spec macx-g++

如果您不希望Makefile创建应用程序包,您也可以删除“app_bundle”您的配置,例如将以下行添加到项目文件中。

mac {
  CONFIG -= app_bundle
}

答案 1 :(得分:10)

正如其他海报所指出的那样,Mac上qmake的默认行为是创建xCode项目文件。每次运行qmake时都可以输入特殊内容,或者为每个项目文件添加几行。有一个更永久的解决方案。每次我在Mac上安装Qt时都会碰到这个。从以下命令行类型:

  

cd /usr/local/Qt4.5/mkspecs /

     

sudo rm default

     

sudo ln -sf macx-g ++ default

第一个在线命令中指定的目录可能需要一些调整。 第一个“sudo”需要管理密码。

这样做是删除违规文件,该文件指定默认的-spec开关是mac-xcode或类似的东西。然后我们用一个文件替换它,指定我们默认使用macx-g ++开关。

答案 2 :(得分:2)

听起来你的Qt安装可能有问题。你自己构建它,还是从别人那里安装一个版本?另外,你有一个示例.pro文件给你这个麻烦吗?

答案 3 :(得分:2)

已经有一段时间了,但我认为你的问题是Mac OS X上的qmake默认创建了xcode项目文件而不是makefile。这就是为什么在运行make时没有找到makefile的原因。相反,请查看qmake的命令行以指定如何定位makefile。此外,可能有一个选项可以添加到.pro文件中以强制每次输出makefile。

答案 4 :(得分:2)

configure -platform macx-g ++ 使用gmake

应该足以满足所有问题