代码在模拟器中运行,在设备上运行时未发现dyld符号抛出错误(Xcode 6测试版)



我正在尝试编译一些使用CFNetwork框架的代码,它在模拟器中运行得很好(具有iOS 7.1的部署目标),但是当我试图在运行iOS 7.1的iPhone 5上运行它时,它抛出以下错误:

dyld: Symbol not found: _NSURLAuthenticationMethodClientCertificate引用自:/var/mobile/applications/......期望目录:/System/Library/Frameworks/CFNetwork.framework/CFNetwork在/var/mobile/Applications/…

关于我的应用程序的信息,它是用Swift编写的,我通过Parse导入CFNetwork,我通过一个objective-C桥接头导入到我的Swift代码中。

我能够解决这个错误,正如其他人所建议的,通过使CFNetwork框架可选而不是必需的。然而,CFNetwork框架是我的应用程序工作所必需的(我使用Parse作为后端,没有它就无法通信)。

因此,我很好奇是否有人能够通过使用上述方法以外的方法来解决这个问题。

当我将应用程序从一台计算机移动到另一台计算机时,我得到了这个错误。如果你使用CMake或类似的东西来生成项目文件,那么我有一个解决方案:在CMake中,而不是选择XCode作为生成器,我切换到Unix Makefiles。然后我所要做的就是在终端中导航到生成make文件的文件夹,然后输入:

$ make
$ sudo make install

这将创建应用程序,并将所有框架和动态库正确打包在我的/usr/local/bin文件夹中。

我知道这个错误在XCode中也是可以修复的,但是我花了很多时间在没有弄清楚的情况下摆弄设置。这是我打包应用程序的解决方案;但是,我仍然在XCode中进行所有的编辑。

相关内容

最新更新