2015-05-29 64 views
0

我目前正試圖將一堆Objective C模塊鏈接到靜態庫中。鐺 - 將靜態庫與pch文件鏈接導致出錯,__STATIC__被禁用

我收到以下錯誤,無法找到任何有關__STATIC__無法在構建PCH文件時被禁用的任何信息。

error: __STATIC__ predefined macro (as opposed to __DYNAMIC__) was disabled in PCH file but is currently enabled 

的命令創建PCH文件:

clang -cc1 -target-cpu x86-64 -g -fno-validate-pch -emit-pch -x objective-c-header afile.pch -o afile.pch.bin -O0 -fmath-errno -fobjc-arc -fobjc-runtime=gnustep -fblocks -pthread -fexceptions -fobjc-exceptions -I... 

隨着大量的-I選項來查找頭文件。

庫文件正在建有:

clang -static -o lib.a -include-pch afile.pch.bin ... 

用幾乎相同的鏈接選項,包括目錄。

任何幫助將非常感謝如何處理這個問題。

回答

0

當使用鐺-cc1選項,則PCH頭文件中的靜態編譯開關是:

-static-define 

(也是主要的編譯和鏈接應該可能使用--static而非-static;這是從海灣合作委員會的文件,而不是鐺文件)

相關問題