2011-03-26 159 views
0

我试图在Snow Leopard上编译Macports - 文件src/macports1.0/get_systemconfiguration_proxies.c。这#include小号CoreFoundation/CoreFoundation.h,这到#includeCoreServices/../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.hFrameworks/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,因为它指的是行号在其中:与

回答

1

错误消息结束。它找不到的文件是CarbonCore/ConditionalMacros.h。我想CarbonCoreCarbonCore.framework。为什么这个问题不久就出现并得到修复,我不知道。也许这是最近的一次变化。

+0

哇,我一直盯着那整整一天,而事实证明我无法读取错误信息到行尾。谢谢! – LSpice 2011-03-26 16:09:20