奇怪的Xcode链接器错误

时间:2014-05-07 01:04:29

标签: ios xcode linker-errors testflight xcode5.1

我收到了这个Xcode错误:

ld: warning: directory not found for option '-L/Volumes/Macintosh HD2/Users/dgd/Dropbox/Websites/iCalTools.com/CalendarFilter/iCal'
ld: warning: directory not found for option '-LFilter/TestFlightSDK3.0.0'
ld: library not found for -lTestFlight
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我的代码就在这条路上:

/Volumes/Macintosh HD2/Users/dgd/Dropbox/Websites/iCalTools.com/CalendarFilter/iCal Filter

由于某种原因,Xcode在第二个空白处出现窒息,并错误地将路径拆分为TestFlight。

真正奇怪的部分是,如果我删除TestFlight API及其库搜索路径,然后将其重新添加,它编译并运行正常,即使库搜索路径似乎在空间仍然被破坏:

enter image description here

一切都继续有效,直到我关闭项目并重新打开它。然后我必须再次移除并读取TestFlight。

(还有一点需要注意,我试图从目录中删除空白,但遇到了更多的Xcode和git问题,试图将其重命名为我放弃并恢复原状。在此过程中的某些时刻,我最终确切地说与“Macintosh HD2”中的空白处的Xcode窒息相同的问题

修改

我通过电子邮件发送了有关此问题的TestFlight支持,并收到了解决此问题的响应。我之前尝试了大部分步骤,除了从磁盘中删除文件(我在磁盘上有几个旧版本的TestFlight,但在项目中没有),并且可能检查了“复制项目”框。我仍然不知道问题究竟是什么,并认为这是一个解决方法,所以我不是添加这个作为答案。也许有人能够解释这里发生了什么。

  

不好意思。

     

如果库搜索路径出现问题,通常会出现这些错误。请删除“Filter / TestFlightSDK3.0.0”行,然后执行以下操作:

     
      
  1. 打开Xcode并选择项目中的所有TestFlight SDK文件(libTestFlight.a,TestFlight.h,TestFlight + AsyncLogging.h,TestFlight + ManualSessions.h)
  2.   
  3. 通过选择移至垃圾箱选项
  4. 删除所有选定的文件   
  5. 在Finder中打开您的项目(右键单击主项目文件夹,然后选择show in finder)
  6.   
  7. 仔细检查TestFlight SDK文件并删除找到的任何文件。
  8.   
  9. 再次下载TestFlight SDK v3并解压缩
  10.   
  11. 将SDK文件夹的内容拖放到项目中。在添加文件提示符下,选中默认值(复制项目,创建组,添加目标)
  12.   
  13. 清理构建并尝试创建新的IPA
  14.   

3 个答案:

答案 0 :(得分:0)

尝试使用引号分隔路径中的项目。

$(inherited) "$(SRCROOT)" "$(SRCROOT)/../Dependencies/Frameworks"/** "$(SRCROOT)/MobileAppTracking-ios" "$(SYSTEM_APPS_DIR)/Reveal.app/Contents/SharedSupport/iOS-Libraries"

我有一个项目,我们的框架搜索路径如上所示。这可能有助于具有空格的路径。如果所有其他方法都失败了,您可以尝试转义空格或将库移动到不包含空格的路径吗?

答案 1 :(得分:0)

对于包含空白的Xcode中的路径,只需在路径周围加上引号(对于所有采用路径的设置都是相同的:包括,搜索路径等。

"/Volumes/Mac HD/Users/The Count of Tuscany/Source/My Stuff/"

答案 2 :(得分:0)

我遇到了同样类型的问题。

只需转到Build Settings。输入"搜索路径"在提供的搜索框中。然后查看第三方库的参考资料。删除值。

现在转到显示程序文件的项目文件菜单。然后删除您有链接器错误的第三方库。请确保备份这些内容,因为您将在下一步中使用它们。

现在将您在其他文件夹或备份文件夹中的相同库拖到xcode项目中。

现在建立。

我通过上述步骤解决了同样的问题。当您将xcode项目从一个用户/ mac移动到另一个用户/ mac时,通常会发生这种情况。否则,如果根据引用缺少库。