Pregunta

Recibo el siguiente error al compilar OpenCV en OS X 10.5 (intel):

ld: warning in .libs/_cv_la-_cv.o, file is not of required architecture
ld: warning in .libs/_cv_la-error.o, file is not of required architecture
ld: warning in .libs/_cv_la-pyhelpers.o, file is not of required architecture
ld: warning in .libs/_cv_la-cvshadow.o, file is not of required architecture
ld: warning in ../../../cv/src/.libs/libcv.dylib, file is not of required architecture
ld: warning in /Developer/SDKs/MacOSX10.4u.sdk/usr/local/lib/libcxcore.dylib, file is not of required architecture
Undefined symbols for architecture i386:
"_fputs$UNIX2003", referenced from:
  _PySwigObject_print in _cv_la-_cv.o
  _PySwigPacked_print in _cv_la-_cv.o
  _PySwigPacked_print in _cv_la-_cv.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/Sr/Srq9N4R8Hr82xeFvW3o-uk+++TI/-Tmp-//cchT0WVX.out (No such file or directory)
make[4]: *** [_cv.la] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Mientras se ejecuta ./configure --with-python todo está bien. Otra cosa extraña es que cuando usé Python 2.4.5 o 2.5.1 todo se compiló bien, el problema ocurrió después de cambiar a Python Framework 2.5.2

¿Fue útil?

Solución 3

Ok, lo resolví

Debe compilarse con python desde macports o lo que sea. Luego necesito ejecutar /System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5 (esta es mi versión anterior de Python) y allí OpenCV simplemente funciona.

Otros consejos

Parece un poco extraño que advierta sobre diferentes arquitecturas cuando se busca /Developer/SDKs/MacOSX10.4u.sdk al vincular - ¿puede darnos más detalles sobre su entorno de compilación (versión de XCode, GCC, Python , $ PATH, etc.)

Alternativamente, ¿ninguno de los binarios de OpenCV disponibles funcionará para usted?

/Developer/SDKs/MacOSX10.4u.sdk/usr/local/lib es solo un enlace a / usr / local / lib después de eliminar archivos que causaron las advertencias que recibo:

ld: warning in .libs/_cv_la-_cv.o, file is not of required architecture
ld: warning in .libs/_cv_la-error.o, file is not of required architecture
ld: warning in .libs/_cv_la-pyhelpers.o, file is not of required architecture
ld: warning in .libs/_cv_la-cvshadow.o, file is not of required architecture
ld: warning in ../../../cv/src/.libs/libcv.dylib, file is not of required architecture
ld: warning in /Users/Pietras/opencv/cxcore/src/.libs/libcxcore.dylib, file is not of required architecture
Undefined symbols for architecture i386: ... `

Y estos archivos son creados por make.

gcc: i686-apple-darwin9-gcc-4.0.1

$ PATH:

/Library/Frameworks/Python.framework/Versions/Current/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/sw/bin:/sw/sbin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/AVRMacPack/bin:/usr/X11R6/bin

XCode 3 (más reciente)

Python 2.5.1 (r251: 54869, 18 de abril de 2007, 22:08:04) - MacPython de python.org (intenté degradarlo y usarlo en lugar de 2.5.2, pero eso ya no funciona ...)

which python
/Library/Frameworks/Python.framework/Versions/Current/bin/python

No encontré ningún binario de Python OpenCV para OS X. Intenté hacerlo mientras configuraba python2.4 o 2.5 desde macports como predeterminado y se compila e instala, pero cuando intento importar hay un error de bus o Fatal Python error Intérprete no inicializado (¿no coinciden las versiones?)  y se cierra.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top