2012-11-21 56 views
1

我試圖建立在Xcode的C++項目使用一個Makefile來構建時,在Xcode忽略。斷點使用的Makefile建立

我得到它通過一個完全空白的項目(空模板)開始工作,添加外部構建系統的目標,並正確設置路徑:

enter image description here

然而斷點不起作用。我創建了一個.cpp文件一個非常簡單的測試項目,但無論我怎麼努力,斷點被忽略:

enter image description here

作爲一個other question建議,我試圖去產品 - >編輯方案...,選中「使用自定義的工作目錄」和我設置爲同一個目錄中的可執行文件,但它並沒有幫助。

我所有的文件(源代碼,生成文件,可執行文件,項目文件)是在Finder中的單個文件夾(在Xcode太)。

如果它的事項我的Makefile也很簡單:

BUILD = . 
TARGET = $(BUILD)/test 
all: 
    g++ test.cpp -o $(TARGET) 

回答

4

添加-g切換到GCC命令包括調試符號是這樣的:

BUILD = . 
TARGET = $(BUILD)/test 
all: 
    g++ -g test.cpp -o $(TARGET) 

編輯:並選擇了另一個目標名稱,因爲test是大多數shell中的shell內置命令,並且您可能會遇到從命令行調用程序時的麻煩(即使我不確定Mac OS)。

+0

就是這樣,謝謝! – DrummerB

0

我有同樣的問題(的Xcode 8.3.3),但加入-g來生成文件沒有解決它。我發現(經過很多痛苦)makefile正在清理.o文件作爲構建的一部分(rm -f $(OBJFILES))。原來的符號信息駐留在.o文件,以便刪除他們的Xcode再也無法調試。我注意到了這條線路,現在一切正常。我使用了-g標誌,它工作。任何與之戰鬥的人都應該確保.o文件位於正確的位置。