我试图在Snow Leopard上编译Macports - 文件src/macports1.0/get_systemconfiguration_proxies.c
。这#include
小号CoreFoundation/CoreFoundation.h
,这到#include
CoreServices/../Frameworks/CarbonCore.framework/Headers/MacTypes.h
#include
小号CoreFoundation/CFBase.h
,该... 尝试。现在,CoreServices
是一个符号链接:gcc包含路径和符号链接
$ ls -l CoreServices
lrwxr-xr-x 1 root wheel 62 Mar 25 17:15 CoreServices -> ../../System/Library/Frameworks/CoreServices.framework/Headers
所以我怀疑我们的目标是去../../System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacTypes.h
,这是完全正常的事情:
$ ls -l ../../System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacTypes.h
-rw-r--r-- 1 root wheel 30291 Jun 24 2010 ../../System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacTypes.h
然而,gcc
不喜欢:
In file included from $INCLUDE/CoreFoundation/CFBase.h:48,
from $INCLUDE/CoreFoundation/CoreFoundation.h:38,
from get_systemconfiguration_proxies.c:42:
$INCLUDE/CoreServices/../Frameworks/CarbonCore.framework/Headers/MacTypes.h:20:42: error: CarbonCore/ConditionalMacros.h: No such file or directory
这使我怀疑
(编辑:但Tom Zych指出,我怀疑是错误的,因为我没有读完错误信息。 叹气)
是gcc
可能无法解析符号链接,而是过度巧妙折叠CoreServices/../Frameworks/CarbonCore.framework/Headers/MacTypes.h
到Frameworks/CarbonCore.framework/Headers/MacTypes.h
,其中,果然,不存在:
$ ls -l Frameworks/CarbonCore.framework/Headers/MacTypes.h
ls: Frameworks/CarbonCore.framework/Headers/MacTypes.h: No such file or directory
难道我是否正确解释了错误?如果是这样,是否有任何方法可以将gcc
转换为cd
之前的符号链接?..
?
$INCLUDE/CoreServices/../Frameworks/CarbonCore.framework/Headers/MacTypes.h:20:42: \
error: CarbonCore/ConditionalMacros.h: No such file or directory
看来,它是能够读取和开始处理MacTypes.h
,因为它指的是行号在其中:与
哇,我一直盯着那整整一天,而事实证明我无法读取错误信息到行尾。谢谢! – LSpice 2011-03-26 16:09:20