2014-12-18 12 views
2

conv-net (http://conv-net.sourceforge.net/) 깊은 학습 라이브러리 opencv 및 C++ 내 Mac OSX에서 컴파일 오전 및이 오류를 통해 얻을 것. 이것은 링크 문제로 보인다. 모든 opencv 라이브러리는 64 비트 용으로 컴파일되었으므로 cmake를 설정하려고했지만 여전히 작동하지 않습니다._cvLoadImage 정의되지 않은 기호를 연결하는 문제

어떤 라이브러리 _cvLoadImage() 링크가 ??? 적절한 라이브러리에 제대로 연결하고 있지만이 하나의 오류를 고칠 수 없습니다 ???? ?????

Undefined symbols for architecture x86_64: 
    "_cvLoadImage", referenced from: 
     _main in testimg.cpp.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
make[2]: *** [testimg] Error 1 
make[1]: *** [CMakeFiles/testimg.dir/all] Error 2 

내가 링커의 -v 출력을했고, 그것은이를 보여줍니다 ... 내가 아니라에서 /usr/local/lib/libopencv_highgui.dylib에서 누락 된 문자를 찾을 수 없습니다 OpenCV의 3.1.0에서

Linking CXX executable testimg 
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn) 
Target: x86_64-apple-darwin14.0.0 
Thread model: posix 
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -dynamic -arch x86_64 -macosx_version_min 10.10.0 -o testimg -search_paths_first -headerpad_max_install_names CMakeFiles/testimg.dir/tst/testimg.cpp.o libcvconvnet.a -lopencv_core -lopencv_highgui -lexpat -lopencv_imgproc -lopencv_photo -lopencv_shape -lopencv_features2d -lopencv_ml -lopencv_objdetect -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/lib/darwin/libclang_rt.osx.a 
+0

'cvLoadImage()'가 HighGUI 모듈에 있습니다. OpenCV를 어디에 설치했는지 알고 있습니까? 그렇다면'nm /usr/local/lib/libopencv_highgui.dylib | grep cvLoadImage' (또는 이와 유사하게 경로를 적절하게 변경)하고 '0000000000016ef0 T _cvLoadImage'와 비슷한 것을 얻을 수 있는지 알려주십시오. –

+0

감사합니다 :) 그것은 효과가 있습니다 !!! – pbu

+0

@IwillnotexistIdonotexist 해당 설명을 대답으로 추가하십시오. – karlphillip

답변

2

/usr/local/lib/libopencv_imgcodecs.dylib.

컴파일 명령에 -lopencv_imgcodecs을 추가하십시오.