ios - Xcode da error del enlazador de Apple Mach-O
objective-c linker-errors (3)
Acabo de compilar un proyecto y Xcode devuelve estos dos errores que no parecen ser culpa de mi código. ¿Cómo los arreglo?
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)
Aparentemente vImageBoxConvolve_ARGB8888 () no está definido. Vea si el marco Accelerate está correctamente incluido en el proyecto.
Enseñar a un hombre (o mujer) a pescar:
Por lo general, el error de vinculador de Mach-O significa que no ha incluido un archivo de encabezado para una función que está utilizando en su código.
La forma más sencilla es copiar esa función o método, llamar y pegar en la búsqueda rápida de Xcode usando shift + command + O. Esto buscará todos los marcos (y archivos de encabezado), buscará esa función o método y le mostrará su ubicación (el encabezado en este caso):
En este caso, esta llamada pertenece al marco Accelerate, por lo que encima de su archivo, ingrese:
#import <Accelerate/Accelerate.h>
Cuando realice una búsqueda rápida, es posible que deba deshacerse del guión bajo. En otras palabras, busque vImageBoxConvolve_ARGB8888
Espero que esto ayude
Google es su amigo: alguien más lo solucionó agregando el marco Accelerate a su proyecto (y esto parece un error de marco).
https://github.com/rnystrom/RNBlurModalView/issues/5
Asegúrese de que también tenga incluido el marco QuartzCore, ya que esa biblioteca también lo requiere.