OS X 10.6.8時,Xcode 3.2.6,基地SDK 10.5,英特爾編譯器11.1英特爾C++編譯器,可以在OS X不開STDARG.H
我得到一個奇怪的消息時,我嘗試編譯說:
catastrophic error: could not open source file "stdarg.h"
我使用的是PCH,我確實發現:Xcode Intel compiler icc cannot find #include <algorithm>
這是一個類似的問題,我認爲,源文件類型設置爲.c.c
,而不是.c
從我所看到的是STDARG.H:
/* This file is public domain. */
/* GCC uses its own copy of this header */
#if defined(__GNUC__)
#include_next <stdarg.h>
#elif defined(__MWERKS__)
#include "mw_stdarg.h"
#else
#error "This header only supports __MWERKS__."
#endif
所以必須GNUC定義,很明顯。
任何人都可以幫我弄清楚如何更好的編譯,因爲這個工程沒有改變GCC 4.0?有沒有一種全球性的方式,可能有XCode重新評估源文件類型不是.c.c
或.cpp.cpp
我甚至不知道這將如何發生。
另外,有沒有#define
,我可以檢查英特爾編譯器是否被用來作出特殊情況,如果我需要?
我查看了構建結果中引用的幾個文件,並在XCode中查看'source file type'它說'source.cc',我想如果我將其更改爲'source.c',那編譯器錯誤消失了。 – Jason
繼續並回答你自己的問題......並不是很多人會使用類似的設置。 –
@Grady - 你有什麼想法,爲什麼文件可以被視爲'c.c'或'.c'以及'.cpp.cpp'和'.cpp'?我不知道爲什麼'.c.c'和'.cpp.cpp'甚至有效 – Jason