2009-01-13 71 views
20

我想在學校使用Qt作爲項目,但遇到問題。我開始關注教程,並且遇到了Makefile問題。大多數教程都說要運行qmake -project,然後運行qmake,最後運行make。但是當我嘗試這個時,我遇到了錯誤make: *** No targets specified and no makefile found. Stop.我對Makefiles沒有太多瞭解。有人能幫助我指出正確的方向嗎?如何在mac os x上使用g ++編譯簡單的Qt和C++應用程序?

+0

您正在使用的XCode或只是命令行? – 2009-01-13 22:39:51

回答

24

OS X上的qmake創建Xcode項目文件。您可以創建一個Makefile有:

qmake -spec macx-g++ 

如果不希望Makefile創建一個應用程序包,你也可以通過添加以下行到您的項目文件中刪除「app_bundle」你的配置,例如。

mac { 
    CONFIG -= app_bundle 
} 
2

這聽起來像你的Qt安裝可能有問題。你自己構建它,還是從別人那裏安裝構建?另外,你有一個例子.pro文件,給你這個麻煩?

+0

我沒有自己建立它。我從qt站點安裝了mac os x build。我使用的.pro看起來像這樣: ` TEMPLATE = app TARGET = DEPENDPATH + =。 INCLUDEPATH + =。 #輸入 HEADERS + = hello.h SOURCES + = main.cpp中HELLO.CPP` 作爲 – Sam 2009-01-14 02:51:48

+0

其他人指出的那樣,QT在OSX與QtSoftware安裝產生的Xcode項目文件。您可能想嘗試從源代碼構建自己的Qt,以便默認構建makefile。 – Arcane 2009-01-14 22:55:45

2

這已經有一段時間了,但我認爲你的問題是Mac OS X上的qmake默認創建了xcode項目文件,而不是makefile。這就是爲什麼當你運行make時沒有找到makefile。相反,請查看qmake的命令行以指定如何定位makefile。另外,可能會有一個選項可以添加到.pro文件中,以便每次強制執行makefile輸出。

10

正如其他海報指出,QMAKE的Mac上的默認行爲是創建Xcode項目文件。每次運行qmake時可以輸入一些特殊的內容,或者在每個項目文件中添加幾行。有一個更持久的解決方案。每當我在我的Mac上安裝Qt時,我都會遇到這種情況。從在下面的命令行類型:

CD /usr/local/Qt4.5/mkspecs/

須藤RM默認

須藤LN -sf MACX-G ++缺省

第一個在線命令中指定的目錄可能需要一些調整。 第一個「sudo」將需要管理密碼。

這樣做是刪除違規文件,指定默認的-spec開關是mac-xcode或類似的東西。然後我們用一個文件替換它,指定我們默認使用macx-g ++開關。

2

配置-platform MACX-G ++ 使用gmake

應足以應對所有問題

相關問題