我在我的应用中使用NMSSH,我遇到了一些问题。我遵循了GitHub页面中编写的安装程序,它在iOS6.1模拟器上运行良好。但是,当我将其构建到运行iOS5.1的iPod touch设备上时,我收到以下错误:
Undefined symbols for architecture armv7:
"_inflate", referenced from:
_comp_method_zlib_decomp in NMSSH(comp.o)
"_deflate", referenced from:
_comp_method_zlib_comp in NMSSH(comp.o)
"_inflateEnd", referenced from:
_comp_method_zlib_dtor in NMSSH(comp.o)
"_deflateInit_", referenced from:
_comp_method_zlib_init in NMSSH(comp.o)
"_deflateEnd", referenced from:
_comp_method_zlib_dtor in NMSSH(comp.o)
"_inflateInit_", referenced from:
_comp_method_zlib_init in NMSSH(comp.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
来自另一个SO线程的建议说包含另一个libz,所以我包含了libz.1.2.5.dylib并且它运行时没有任何错误。但是,每当我尝试从实际设备上运行的应用程序发送SSH命令时,它都会崩溃而没有任何痕迹。在iOS6.1模拟器中这样做会导致没有问题。
任何帮助将不胜感激! 〜Carpetfizz
编辑:应用程序也适用于iOS5.1模拟器!答案 0 :(得分:0)
您需要重建目标设备的框架,并将.framework文件重新添加到Xcode项目中。像这样
然后清理并构建。将.framework文件添加到应用程序项目框架,首先删除旧的.framework文件。希望这可以帮助!祝你好运!
答案 1 :(得分:0)
添加 lib.dylib 。 同时添加 CFNetworking 。 就这么简单。 然后它应该工作。 希望这有帮助。