繁体   English   中英

Xcode给Apple Mach-O链接器错误

[英]Xcode gives Apple Mach-O linker error

我刚编译了一个项目,Xcode返回这两个错误,这些错误似乎不是我代码的错。 我该如何解决?

Undefined symbols for architecture i386:
  "_vImageBoxConvolve_ARGB8888", referenced from:
      -[UIImage(Blur) boxblurImageWithBlur:] in UIImage+Blur.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

教一个男人(或女人)如何钓鱼:

通常,Mach-O链接器错误意味着您没有为代码中使用的函数包含头文件。

最简单的方法是复制该函数或方法调用并使用shift + command + O粘贴到Xcode快速搜索中。 这将搜索所有框架(和头文件),找到该函数或方法调用并显示它的位置(在这种情况下为标题):

在这种情况下,此调用属于Accelerate框架,因此在文件的顶部,输入:

#import <Accelerate/Accelerate.h>

在进行快速搜索时,您可能必须摆脱前导下划线。 换句话说,搜索vImageBoxConvolve_ARGB8888

希望这可以帮助

谷歌是你的朋友:其他人通过将Accelerate框架添加到他们的项目来解决这个问题(这看起来像一个框架错误)。

https://github.com/rnystrom/RNBlurModalView/issues/5

确保您也包含QuartzCore框架,因为该库也需要它。

显然vImageBoxConvolve_ARGB8888()未定义。 查看Accelerate框架是否正确包含在项目中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM