从Unity导入的Xcode项目拼写错误的库名称

时间:2015-07-06 15:16:03

标签: xcode unity3d google-cardboard virtual-reality

我正在开发一个Unity Pro项目,该项目使用Cardboard SDK为iPhone制作应用程序。我已按照Cardboard Getting Started for IOS页面上的所有说明操作。

将问题导入Mac上的Xcode时出现问题。构建失败:

ld: library not found for -liontext
(null): Linker command failed with exit code 1 (use -v to see invocation)

检查日志时,我发现对所包含库的所有调用都拼写错误(它不是 liontext ,它是 libion​​text 。)。不知何故,构建脚本在中间剥离了'bi'。这种情况发生在许多其他库中。见截图。

错误日志: enter image description here

实际图书馆: enter image description here

问题是,如果有一种方法可以手动编辑名称,或者使构建通过此错误。我已经尝试在Unity中多次构建项目,但同样的情况也是如此。另外,我已经将我的VR应用程序发布到Play商店,但Xcode使得在App Store上无法做到这一点。

感谢任何帮助。

2 个答案:

答案 0 :(得分:3)

之所以发生这种情况,是因为在XCode项目的搜索路径中有一些拼写错误的拼写错误。检查您的XCode项目的构建设置,查找搜索路径,在库编写路径中编写

//:configuration = Debug
LIBRARY_SEARCH_PATHS = $(inherited) "$(SRCROOT)" "$(SRCROOT)/Libraries" "$(SRCROOT)/Libraries\Standard Assets/Plugins/iOS"

//:configuration = Release
LIBRARY_SEARCH_PATHS = $(inherited) "$(SRCROOT)" "$(SRCROOT)/Libraries" "$(SRCROOT)/Libraries\Standard Assets/Plugins/iOS"

//:completeSettings = some
LIBRARY_SEARCH_PATHS

enter image description here

查找反斜杠'\',将其替换为斜杠'/'并尝试重建项目,这解决了我的问题。

应该是这样的:

//:configuration = Debug
LIBRARY_SEARCH_PATHS = $(inherited) "$(SRCROOT)" "$(SRCROOT)/Libraries" "$(SRCROOT)/Libraries/Standard Assets/Plugins/iOS"

//:configuration = Release
LIBRARY_SEARCH_PATHS = $(inherited) "$(SRCROOT)" "$(SRCROOT)/Libraries" "$(SRCROOT)/Libraries/Standard Assets/Plugins/iOS"

//:completeSettings = some
LIBRARY_SEARCH_PATHS

答案 1 :(得分:0)

首先尝试删除并重新导入所有这4个库。但如果这个问题仍然存在,那么,

最愚蠢和最简单的解决方案之一是将所有四个lib *文件重命名为l *。例如libiontext.aliontext.a

我知道这是非常奇怪的解决方案,但它有效:)