更新到XCode5后找不到选项'-f WARNING的目录

时间:2013-10-25 08:31:29

标签: xcode cocoa compiler-warnings

由于我已经为我的OSX项目更新了XCode 5,因此我收到以下警告,我不知道为什么以及如何解决它:

Ld /Users/thomaswickl/Library/Developer/Xcode/DerivedData/QuickQuick2-aniutiuhasvwojftbgyjcsdqtxzw/Build/Products/Debug/QuickQuick2.app/Contents/MacOS/QuickQuick2 normal x86_64
    cd "/Users/thomaswickl/Development/Git Projects/quickquick2/QuickQuick2"
    setenv MACOSX_DEPLOYMENT_TARGET 10.9
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -L/Users/thomaswickl/Library/Developer/Xcode/DerivedData/QuickQuick2-aniutiuhasvwojftbgyjcsdqtxzw/Build/Products/Debug -F/Users/thomaswickl/Library/Developer/Xcode/DerivedData/QuickQuick2-aniutiuhasvwojftbgyjcsdqtxzw/Build/Products/Debug -F/Users/thomaswickl/Development/Git\ Projects/quickquick2/QuickQuick2 -F\"/Users/thomaswickl/Development/Git\ Projects/quickquick2/QuickQuick2/..\" -F/Users/thomaswickl/Development/Git\ Projects/quickquick2 -filelist /Users/thomaswickl/Library/Developer/Xcode/DerivedData/QuickQuick2-aniutiuhasvwojftbgyjcsdqtxzw/Build/Intermediates/QuickQuick2.build/Debug/QuickQuick2.build/Objects-normal/x86_64/QuickQuick2.LinkFileList -Xlinker -rpath -Xlinker @loader_path/../Frameworks -mmacosx-version-min=10.9 -fobjc-arc -fobjc-link-runtime -framework Carbon -framework Rebel -framework Accounts -framework Social -framework MapKit -framework Cocoa -Xlinker -dependency_info -Xlinker /Users/thomaswickl/Library/Developer/Xcode/DerivedData/QuickQuick2-aniutiuhasvwojftbgyjcsdqtxzw/Build/Intermediates/QuickQuick2.build/Debug/QuickQuick2.build/Objects-normal/x86_64/QuickQuick2_dependency_info.dat -o /Users/thomaswickl/Library/Developer/Xcode/DerivedData/QuickQuick2-aniutiuhasvwojftbgyjcsdqtxzw/Build/Products/Debug/QuickQuick2.app/Contents/MacOS/QuickQuick2


ld: warning: directory not found for option '-F"/Users/thomaswickl/Development/Git Projects/quickquick2/QuickQuick2/.."'

我失去了,因为我不明白这个警告。任何想法这意味着什么以及如何解决这个警告?应用程序启动但警告很烦人,我将警告视为错误。

2 个答案:

答案 0 :(得分:3)

在终端窗口中键入man ld,您将获得ld命令及其所需参数的描述。在那里你会发现-F指定了一个搜索框架的目录.Xcode生成的命令行包含:

-F/Users/thomaswickl/Development/Git\ Projects/quickquick2/QuickQuick2
-F\"/Users/thomaswickl/Development/Git\ Projects/quickquick2/QuickQuick2/..\"
-F/Users/thomaswickl/Development/Git\ Projects/quickquick2

第二个条目实际上是多余的 - 它与第三个条目相同(因为..表示父级) - 但看起来您的问题是路径转义的方式。要允许路径中的空格,可以将其用引号括起来,或者在空格前面加一个反斜杠。路径1&amp; 3使用反斜杠方法,路径2使用两者,因此反斜杠可能被视为文字字符(即终端中会发生的情况),因此路径不正确......(但是还是眼睛呢?; - ))< / p>

当项目转换为Xcode 5时,可能会引入这种双重转义。路径列在项目的设置中(抱歉Xcode无法处理),将其搜出并删除(因为它是重复的)。

HTH。

答案 1 :(得分:2)

确保从aTrget中的测试中的构建设置中删除框架搜索路径。