iOS添加第三方库后,报错Undefined symbols for architecture x86_64: "_OPENSSL_ia32cap_P", referenced from...

之前正常使用 NIMSDK,但打包后包体变得很大,通过查找原因,发现是包体的问题,
添加轻量级的NIMSDK_LITE 后,包体减少 10M 多,真机可以运行,但在模拟器运行时,发现报错,

Undefined symbols for architecture x86_64: "_OPENSSL_ia32cap_P", referenced from...

解决方法:Build Settings-Other Linker Flags- 添加-all_load即可在模拟器运行

后续:
引入-all_load 确实可以解决问题,但如果再次引用 c 文件,或者多个静态类时,可能会报duplicate symbol for architecture x86_64错误,
解决方法: Build Settings-Other Linker Flags- 添加-force_load $(SRCROOT)/… 具体的.a 文件,这样只会强制引入单体的引用,不会影响其他的.

你可能感兴趣的:(iOS)