由于我已经为我的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/.."'
我失去了,因为我不明白这个警告。任何想法这意味着什么以及如何解决这个警告?应用程序启动但警告很烦人,我将警告视为错误。
答案 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中的测试中的构建设置中删除框架搜索路径。