Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undefined symbols for architecture x86_64 #1

Open
stanchiang opened this issue Aug 19, 2016 · 2 comments
Open

Undefined symbols for architecture x86_64 #1

stanchiang opened this issue Aug 19, 2016 · 2 comments

Comments

@stanchiang
Copy link

I brew installed opencv, eigen, and glew and updated header file paths to fit my own system, but i run into this error ld: symbol(s) not found for architecture x86_64

here's my output if it helps

CompileC src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/Objects-normal/x86_64/Main.o Examples/Monocular/Main.cc normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler
    cd /Users/stan
    export LANG=en_US.US-ASCII
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x c++ -arch x86_64 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -Wno-trigraphs -fpascal-strings -O0 -Wno-missing-field-initializers -Wno-missing-prototypes -Wno-return-type -Wno-non-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wno-missing-braces -Wparentheses -Wswitch -Wno-unused-function -Wno-unused-label -Wno-unused-parameter -Wno-unused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-bool-conversion -Wno-enum-conversion -Wno-shorten-64-to-32 -Wno-newline-eof -Wno-c++11-extensions -DCMAKE_INTDIR=\"Debug\" -DCOMPILEDWITHC11 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -fasm-blocks -fstrict-aliasing -Wdeprecated-declarations -Winvalid-offsetof -mmacosx-version-min=10.11 -g -Wno-sign-conversion -I/Users/stan/src/ORB_SLAM2/Examples/Monocular/Debug/include -I/Users/stan/src/ORB_SLAM2 -I/Users/stan/src/ORB_SLAM2/include -I/usr/local/include/eigen3 -I/Users/stan/src/ORB_SLAM2/Pangolin/include -I/Users/stan/src/ORB_SLAM2/Pangolin/build/src/include -I/usr/local/include -I/usr/local/Cellar/opencv3/3.1.0_3/include/opencv -I/usr/local/Cellar/opencv3/3.1.0_3/include -I/Users/stan/include -I/Users/stan -I/Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/DerivedSources/x86_64 -I/Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/DerivedSources -Wmost -Wno-four-char-constants -Wno-unknown-pragmas -F/Users/stan/src/ORB_SLAM2/Examples/Monocular/Debug -std=c++11 -MMD -MT dependencies -MF /Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/Objects-normal/x86_64/Main.d --serialize-diagnostics /Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/Objects-normal/x86_64/Main.dia -c /Users/stan/Examples/Monocular/Main.cc -o /Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/Objects-normal/x86_64/Main.o

In file included from /Users/stan/Examples/Monocular/Main.cc:30:
In file included from /usr/local/include/opencv2/opencv.hpp:73:
/usr/local/include/opencv2/ml/ml.hpp:961:18: warning: 'CvForestTree::train' hides overloaded virtual functions [-Woverloaded-virtual]
    virtual bool train( CvDTreeTrainData* trainData, const CvMat* _subsample_idx, CvRTrees* forest );
                 ^
/usr/local/include/opencv2/ml/ml.hpp:867:18: note: hidden overloaded virtual function 'CvDTree::train' declared here: different number of parameters (2 vs 3)
    virtual bool train( CvMLData* trainData, CvDTreeParams params=CvDTreeParams() );
                 ^
/usr/local/include/opencv2/ml/ml.hpp:877:26: note: hidden overloaded virtual function 'CvDTree::train' declared here: different number of parameters (8 vs 3)
    CV_WRAP virtual bool train( const cv::Mat& trainData, int flag,
                         ^
/usr/local/include/opencv2/ml/ml.hpp:1149:18: warning: 'CvBoostTree::train' hides overloaded virtual functions [-Woverloaded-virtual]
    virtual bool train( CvDTreeTrainData* trainData,
                 ^
/usr/local/include/opencv2/ml/ml.hpp:867:18: note: hidden overloaded virtual function 'CvDTree::train' declared here: different number of parameters (2 vs 3)
    virtual bool train( CvMLData* trainData, CvDTreeParams params=CvDTreeParams() );
                 ^
/usr/local/include/opencv2/ml/ml.hpp:877:26: note: hidden overloaded virtual function 'CvDTree::train' declared here: different number of parameters (8 vs 3)
    CV_WRAP virtual bool train( const cv::Mat& trainData, int flag,
                         ^
/Users/stan/Examples/Monocular/Main.cc:110:16: warning: unused variable 'ttrack' [-Wunused-variable]
        double ttrack= std::chrono::duration_cast<std::chrono::duration<double> >(t2 - t1).count();
               ^
3 warnings generated.

Ld src/ORB_SLAM2/Examples/Monocular/Debug/mono_kitti normal x86_64
    cd /Users/stan
    export MACOSX_DEPLOYMENT_TARGET=10.11
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -L/Users/stan/src/ORB_SLAM2/Examples/Monocular/Debug -F/Users/stan/src/ORB_SLAM2/Examples/Monocular/Debug -filelist /Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/Objects-normal/x86_64/mono_kitti.LinkFileList -Xlinker -rpath -Xlinker /Users/stan/src/ORB_SLAM2/Pangolin/build/src -mmacosx-version-min=10.11 -Xlinker -no_deduplicate -Wl,-search_paths_first -Wl,-headerpad_max_install_names /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_videostab.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_superres.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_stitching.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_shape.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_video.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_photo.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_objdetect.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_calib3d.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_features2d.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_ml.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_highgui.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_videoio.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_imgcodecs.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_imgproc.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_flann.3.1.0.dylib /usr/local/Cellar/opencv3/3.1.0_3/lib/libopencv_core.3.1.0.dylib -framework AGL -framework OpenGL /usr/local/lib/libGLEW.dylib -framework Cocoa /usr/lib/libpython2.7.dylib /usr/local/lib/libavcodec.dylib /usr/local/lib/libavformat.dylib /usr/local/lib/libavutil.dylib /usr/local/lib/libswscale.dylib /usr/local/lib/libpng.dylib /usr/lib/libz.dylib /usr/local/lib/libjpeg.dylib /usr/local/lib/libtiff.dylib /usr/local/lib/libIlmImf.dylib -Xlinker -dependency_info -Xlinker /Users/stan/src/ORB_SLAM2/build/ORB_SLAM2.build/Debug/mono_kitti.build/Objects-normal/x86_64/mono_kitti_dependency_info.dat -o /Users/stan/src/ORB_SLAM2/Examples/Monocular/Debug/mono_kitti

Undefined symbols for architecture x86_64:
  "cv::FileStorage::FileStorage(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
      ORB_SLAM2::System::System(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, ORB_SLAM2::System::eSensor, bool) in System.o
      ORB_SLAM2::Tracking::Tracking(ORB_SLAM2::System*, DBoW2::TemplatedVocabulary<cv::Mat, DBoW2::FORB>*, ORB_SLAM2::Map*, ORB_SLAM2::KeyFrameDatabase*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) in Tracking.o
      ORB_SLAM2::Tracking::ChangeCalibration(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in Tracking.o
  "cv::_InputArray::_InputArray(cv::Mat const&)", referenced from:
      ORB_SLAM2::Frame::Frame(cv::Mat const&, double const&, ORB_SLAM2::ORBextractor*, DBoW2::TemplatedVocabulary<cv::Mat, DBoW2::FORB>*, cv::Mat&, cv::Mat&, float const&, float const&) in Frame.o
      ORB_SLAM2::Frame::UndistortKeyPoints() in Frame.o
      ORB_SLAM2::Frame::ComputeImageBounds(cv::Mat const&) in Frame.o
      ORB_SLAM2::Frame::isInFrustum(ORB_SLAM2::MapPoint*, float) in Frame.o
      ORB_SLAM2::Initializer::ReconstructH(std::__1::vector<bool, std::__1::allocator<bool> >&, cv::Mat&, cv::Mat&, cv::Mat&, cv::Mat&, std::__1::vector<cv::Point3_<float>, std::__1::allocator<cv::Point3_<float> > >&, std::__1::vector<bool, std::__1::allocator<bool> >&, float, int) in Initializer.o
      ORB_SLAM2::Initializer::ComputeH21(std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > > const&, std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > > const&) in Initializer.o
      ORB_SLAM2::Initializer::ComputeF21(std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > > const&, std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > > const&) in Initializer.o
      ...
  "cv::_OutputArray::_OutputArray(cv::Mat const&)", referenced from:
      ORB_SLAM2::Initializer::CheckRT(cv::Mat const&, cv::Mat const&, std::__1::vector<cv::KeyPoint, std::__1::allocator<cv::KeyPoint> > const&, std::__1::vector<cv::KeyPoint, std::__1::allocator<cv::KeyPoint> > const&, std::__1::vector<std::__1::pair<int, int>, std::__1::allocator<std::__1::pair<int, int> > > const&, std::__1::vector<bool, std::__1::allocator<bool> >&, cv::Mat const&, std::__1::vector<cv::Point3_<float>, std::__1::allocator<cv::Point3_<float> > >&, float, std::__1::vector<bool, std::__1::allocator<bool> >&, float&) in Initializer.o
      ORB_SLAM2::KeyFrame::SetPose(cv::Mat const&) in KeyFrame.o
      ORB_SLAM2::LocalMapping::CreateNewMapPoints() in LocalMapping.o
      ORB_SLAM2::PnPsolver::iterate(int, bool&, std::__1::vector<bool, std::__1::allocator<bool> >&, int&) in PnPsolver.o
      ORB_SLAM2::PnPsolver::Refine() in PnPsolver.o
      ORB_SLAM2::Sim3Solver::iterate(int, bool&, std::__1::vector<bool, std::__1::allocator<bool> >&, int&) in Sim3Solver.o
      ORB_SLAM2::Sim3Solver::ComputeSim3(cv::Mat&, cv::Mat&) in Sim3Solver.o
      ...
  "cv::_OutputArray::_OutputArray(cv::Mat&)", referenced from:
      cv::Mat::clone() const in Converter.o
      ORB_SLAM2::Frame::Frame(cv::Mat const&, double const&, ORB_SLAM2::ORBextractor*, DBoW2::TemplatedVocabulary<cv::Mat, DBoW2::FORB>*, cv::Mat&, cv::Mat&, float const&, float const&) in Frame.o
      ORB_SLAM2::Frame::UndistortKeyPoints() in Frame.o
      ORB_SLAM2::Frame::ComputeImageBounds(cv::Mat const&) in Frame.o
      cv::Mat::clone() const in Frame.o
      ORB_SLAM2::Initializer::ReconstructH(std::__1::vector<bool, std::__1::allocator<bool> >&, cv::Mat&, cv::Mat&, cv::Mat&, cv::Mat&, std::__1::vector<cv::Point3_<float>, std::__1::allocator<cv::Point3_<float> > >&, std::__1::vector<bool, std::__1::allocator<bool> >&, float, int) in Initializer.o
      ORB_SLAM2::Initializer::ReconstructF(std::__1::vector<bool, std::__1::allocator<bool> >&, cv::Mat&, cv::Mat&, cv::Mat&, cv::Mat&, std::__1::vector<cv::Point3_<float>, std::__1::allocator<cv::Point3_<float> > >&, std::__1::vector<bool, std::__1::allocator<bool> >&, float, int) in Initializer.o
      ...
  "cv::eigen(cv::_InputArray const&, cv::_OutputArray const&, cv::_OutputArray const&, int, int)", referenced from:
      ORB_SLAM2::Sim3Solver::ComputeSim3(cv::Mat&, cv::Mat&) in Sim3Solver.o
  "cv::write(cv::FileStorage&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, double)", referenced from:
      cv::FileStorage& cv::operator<<<double>(cv::FileStorage&, double const&) in System.o
  "cv::write(cv::FileStorage&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int)", referenced from:
      cv::FileStorage& cv::operator<<<int>(cv::FileStorage&, int const&) in System.o
      cv::FileStorage& cv::operator<<<DBoW2::ScoringType>(cv::FileStorage&, DBoW2::ScoringType const&) in System.o
      cv::FileStorage& cv::operator<<<DBoW2::WeightingType>(cv::FileStorage&, DBoW2::WeightingType const&) in System.o
  "cv::circle(cv::Mat&, cv::Point_<int>, int, cv::Scalar_<double> const&, int, int, int)", referenced from:
      _main in Main.o
  "cv::imshow(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, cv::_InputArray const&)", referenced from:
      _main in Main.o
  "cv::Exception::Exception(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int)", referenced from:
      cv::Mat::diag(cv::Mat const&) in Initializer.o
      cv::FileStorage& cv::operator<<<int>(cv::FileStorage&, int const&) in System.o
      cv::FileStorage& cv::operator<<<DBoW2::ScoringType>(cv::FileStorage&, DBoW2::ScoringType const&) in System.o
      cv::FileStorage& cv::operator<<<DBoW2::WeightingType>(cv::FileStorage&, DBoW2::WeightingType const&) in System.o
      cv::FileStorage& cv::operator<<<double>(cv::FileStorage&, double const&) in System.o
      cv::Mat::operator cv::Vec<float, 3><float, 3>() const in Main.o
  "cv::operator<<(cv::FileStorage&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
      cv::operator<<(cv::FileStorage&, char const*) in System.o
      DBoW2::TemplatedVocabulary<cv::Mat, DBoW2::FORB>::save(cv::FileStorage&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const in System.o
  "cv::FileStorage::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const", referenced from:
      DBoW2::TemplatedVocabulary<cv::Mat, DBoW2::FORB>::load(cv::FileStorage const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in System.o
  "vtable for cv::_InputArray", referenced from:
      cv::_InputArray::_InputArray<float>(cv::Mat_<float> const&) in KeyFrame.o
      cv::_InputArray::_InputArray<float>(cv::Mat_<float> const&) in LocalMapping.o
      cv::_InputArray::_InputArray<float>(cv::Mat_<float> const&) in Sim3Solver.o
      cv::_InputArray::_InputArray<cv::Point3_<float> >(std::__1::vector<cv::Point3_<float>, std::__1::allocator<cv::Point3_<float> > > const&) in Main.o
      cv::_InputArray::_InputArray<cv::Point_<float> >(std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > > const&) in Main.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for cv::_OutputArray", referenced from:
      cv::_OutputArray::_OutputArray<float>(cv::Mat_<float>&) in KeyFrame.o
      cv::_OutputArray::_OutputArray<float>(cv::Mat_<float>&) in LocalMapping.o
      cv::_OutputArray::_OutputArray<float>(cv::Mat_<float>&) in Sim3Solver.o
      cv::_OutputArray::_OutputArray<cv::Point_<float> >(std::__1::vector<cv::Point_<float>, std::__1::allocator<cv::Point_<float> > >&) in Main.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)


@niklio
Copy link

niklio commented Nov 15, 2016

Hi @stanchiang

I'm running into the same issue. Were you able to find a solution?

Thanks!

@Liuyangdong
Copy link

Hi @nliolios24
You can change your opencv version from 3.1.0 to 2.4.12.
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants