2012-04-02 71 views
0

編輯:在調用靜態庫外部宏觀

我的Xcode項目(稱爲PROJECT1)包含另一個Xcode項目作爲依賴(在構建階段)(稱爲LIB1)

我的問題是,LIB1需求一個宏和一些由PROJECT1在編譯時定義的定義(取決於在PROJECT1中選擇了什麼目標)

我認爲運行腳本操作可以幫助我。但是我發現在構建依賴關係之後調用腳本。所以我的包含文件被複制到我的lib源代碼,之後,編譯庫...

此外我發現構建設置環境變量不傳輸到LIB1,這將幫助我很多。

你有什麼想法嗎?

感謝您的幫助。

蒂埃裏

+1

買它的眼鏡?宏不是「調用」的,它們是「擴展的」。編譯代碼時(或更準確地說,預處理)它們必須存在,並且在編譯後更改宏將不起作用。 – 2012-04-02 18:21:26

+0

我編輯了我的問題。 – thierryb 2012-04-03 17:35:22

回答

0

你需要包括包含在你需要它的代碼所需要的東西的頭文件。宏不像你在另一個地方跳轉到代碼的功能。宏在您使用它的地方創建代碼。

0

另一種選擇是將所有的依賴變成變量/方法,而不是宏文字或宏函數擴展。通常這將通過爲每個不同的操作環境提供的單獨的服務模塊來實現。