2013-04-12 45 views
1

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,我可以检查英特尔编译器是否被用来作出特殊情况,如果我需要?

+0

我查看了构建结果中引用的几个文件,并在XCode中查看'source file type'它说'source.cc',我想如果我将其更改为'source.c',那编译器错误消失了。 – Jason

+0

继续并回答你自己的问题......并不是很多人会使用类似的设置。 –

+0

@Grady - 你有什么想法,为什么文件可以被视为'c.c'或'.c'以及'.cpp.cpp'和'.cpp'?我不知道为什么'.c.c'和'.cpp.cpp'甚至有效 – Jason

回答

0

我查看了构建结果中引用的几个文件,并在XCode中查看源代码文件类型,它说source.c.c,我认为如果将其更改为source.c,编译器错误消失。

相关问题