Xcode mach -o链接器

时间:2014-02-18 16:27:41

标签: ios xcode

当我尝试使用NMSSH框架编译我的项目时,XCode 5说:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_NMSSHSession", referenced from: objc-class-ref in HelloWorldViewController.o ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)

我该怎么办?

3 个答案:

答案 0 :(得分:1)

我自己遇到了类似的问题。这是我做的修复它。

  1. 在Finder中打开下载的Git仓库 Finder View

  2. 打开NMSSH-iOS.xcodeproj文件。 NMSSH.xcodeproj!

  3. 清理并构建项目。

  4. 按照Github wiki页面中的步骤https://github.com/Lejdborg/NMSSH/wiki/Build-and-use-in-your-iOS-project

  5. 实际上,这本身也在维基页面上。我知道我打开了错误的Xcode项目,似乎有很多人不小心做了。所以,这就是我必须要解决的问题。此外,您必须为物理设备或模拟器构建框架,具体取决于您正在使用的内容并根据您的项目添加。 Xcode

    希望这有帮助!祝你好运!

答案 1 :(得分:0)

您需要将NMSSH.framework与您的项目相关联。

在项目设置中打开构建阶段,并将NMSSH.framework添加到 Link Binary With Libraries 组中。

答案 2 :(得分:0)

试试这个:

Click on the project then go to build settings and type linker flags in the search bar   
Add "-ObjC" to "Other Linker Flags"