Undefined symbols for architecture x86_64:

Brickle Macho bricklemacho at gmail.com
Mon Sep 22 23:55:33 PDT 2014


Hi All,

Not sure how to solve my problem, any help appreciated   Writing a 
simple C++ program to use OpenCV 2.4.9.  I am getting the following error.

Undefined symbols for architecture x86_64:
   "cv::imread(std::basic_string<.....

Google searches seems to indicate linker error and/or libs compiled with 
different C++ compilers.    Everything has been installed via Macports.  
OpenCV appears to be configured/installed as per output below.   Problem 
seems to be with C++ code.  Python scripts seem to be able to use OpenCV 
stuff.  In this instance need to use C++.  Not sure where to start to 
solve this problems.   Any idea, how to diag/solve my issue.

Regards,

Michael.
-----


Now, I have done:

sudo port selfupdate
sudo port upgrade outdate
tried cmake (seemed to find OpenCV)
tried hand crafted Makefile

/usr/local have been moved to /usr/local_mac

Output from "pkg-config --cflags opencv"
-I/opt/local/include/opencv -I/opt/local/include

Output from "pkg-config --libs opencv"
-L/opt/local/lib -lopencv_calib3d -lopencv_contrib -lopencv_core 
-lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui 
-lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_nonfree 
-lopencv_objdetect -lopencv_photo -lopencv_stitching -lopencv_superres 
-lopencv_ts -lopencv_video -lopencv_videostab

Output from "port select gcc"
Available versions for gcc:
     mp-gcc45
     mp-gcc47 (active)
     mp-llvm-gcc42
     none

gcc --version
gcc (MacPorts gcc47 4.7.4_1) 4.7.4
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

g++ --version
g++ (MacPorts gcc47 4.7.4_1) 4.7.4
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.




More information about the macports-users mailing list