我配置,它使用的OpenCV與Apache Python應用程序(XAMPP )在MacOSx(El Capitan)系統上。而且,我正在使用mod_wsgi。根據安裝指南,mod_wsgi已成功(並正確)用Python3.6和XAMPP的apache版本構建。mod_wsgi的錯誤:導入錯誤:執行dlopen(/usr/local/lib/python3.6/site-packages/cv2.so,2):符號未找到:_iconv
我有一個Python應用程序(不OpenCV的)與Apache之前使用mod_wsgi的使用,它已經工作正常。
不過,我現在它使用了OpenCV,我收到以下錯誤(Apache的錯誤日誌),我沒有約,morever我沒有找到在互聯網上類似的任何想法,其他應用程序:
[Tue Jul 18 12:12:53.547655 2017] [wsgi:error] [pid 19030] [remote ::1:51718]
import cv2
[Tue Jul 18 12:12:53.547686 2017] [wsgi:error] [pid 19030] [remote ::1:51718]
ImportError: dlopen(/usr/local/lib/python3.6/site-packages/cv2.so, 2): Symbol not found: _iconv
[Tue Jul 18 12:12:53.547698 2017] [wsgi:error] [pid 19030] [remote ::1:51718]
Referenced from: /System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling
[Tue Jul 18 12:12:53.547706 2017] [wsgi:error] [pid 19030] [remote ::1:51718] Expected in: /Applications/XAMPP/xamppfiles/lib/libiconv.2.dylib
[Tue Jul 18 12:12:53.547713 2017] [wsgi:error] [pid 19030] [remote ::1:51718] in /System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling
輸出的
/usr/local/lib/python3.6/site-packages/cv2.so:
@rpath/libopencv_shape.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_superres.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_stitching.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_videostab.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_objdetect.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_photo.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_video.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_calib3d.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_features2d.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_flann.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_ml.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_highgui.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_videoio.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_imgcodecs.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_imgproc.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
@rpath/libopencv_core.3.2.dylib (compatibility version 3.2.0, current version 3.2.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.4.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0)
請注意,即使使用Apple版本的Apache,也會發生共享庫衝突。這是因爲您使用PSF中的Python 3.6+,因爲它捆綁了自己的OpenSSL庫。如果你在Apache中使用mod_ssl,它會拖拽到覆蓋Python的系統SSL庫中,所以會出現衝突並且不起作用。如果使用Python 3.6,那麼不可能在Apache中使用mod_ssl。 –