我正在尝试构建链接到第三方SDK(用C ++编写)的框架。 当我为iPhone 6s构建它时出现此错误:
Undefined symbols for architecture arm64:
"_deblock_vert_lpf9", referenced from:
_deblock_vert in libpostprocess.a(postprocess.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
但是,当我将这些相同的SDK文件复制到另一个应用程序项目并构建时,它可以正常工作。 我已经仔细检查了所有构建设置,两个项目中的一切都相同。 框架的代码是here。
我不确定这是否相关,但我也看到一条警告说:
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/usr/lib/libgcc_s.1.tbd, missing required architecture arm64 in file /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/usr/lib/libgcc_s.1.tbd (2 slices)
答案 0 :(得分:0)
问题是随SDK提供的libpostprocess.a已经过时了。 我在网上找到了一个更新版本,它刚刚起作用。 :)