2010-10-18 80 views
0

我看過所有關於通過「預處理器宏」設置設置預處理器標誌的文章。出於某種原因,Xcode似乎忽略了我的設置。xcode似乎忽略預處理器標誌

我正在構建通過CMake創建的Xcode項目。在Dependencies.cmake文件中,添加了一些定義。例如:

add_definitions(-DUSE_POCO)

add_definitions(-DPOCO_STATIC)

當我看着我的Xcode項目和編輯目標信息,我看到他們在 「預處理宏」。當我構建項目時,我看到它們在使用的命令行中定義。現在,如果我嘗試更改它們,我的更改不起作用。我試過在「預處理宏」下將POCO_STATIC更改爲POCO_STATIC1,但這會被忽略。

我有下面的代碼進行測試:

#ifdef POCO_STATIC1 
    adsjfklasjdf 
#endif 

如果我刪除了1,那麼它將無法編譯。如果我放回1,一切都恢復正常。這意味着,我的更改沒有任何效果。

我已經嘗試在項目級別(它是空的)使用「預處理器宏」,但是它也沒有做任何事情。我也看過「其他C++標誌」無濟於事。基本上,這些設置似乎沒有被傳遞給編譯器(GCC 4.2)。

任何想法?謝謝。

回答

0

這聽起來像別的東西正在阻礙。您是將項目作爲純XCode項目運行,還是仍然涉及cmake?

+0

Xcode項目是使用以下命令生成的:cmake -G「Xcode」。之後,我只使用Xcode。 – Ben 2010-10-19 06:12:17