2015-04-12 25 views
-1

https://stackoverflow.com/questions/29585180/caffe-make-error-in-mac-os-10-9朱古力使錯誤未定義參考x86_64的

的Mac OS 10.9,Cuda的6.5,opencv的2.4.11,蟒蛇..

通過消除-limgcodecs,我收到了同樣的錯誤在─

PROTOC src/caffe/proto/caffe.proto 
CXX src/caffe/blob.cpp 
CXX src/caffe/common.cpp 
CXX src/caffe/data_transformer.cpp 
CXX src/caffe/internal_thread.cpp 
CXX src/caffe/layer_factory.cpp 
CXX src/caffe/layers/absval_layer.cpp 
CXX src/caffe/layers/accuracy_layer.cpp 
CXX src/caffe/layers/argmax_layer.cpp 
CXX src/caffe/layers/base_conv_layer.cpp 
CXX src/caffe/layers/base_data_layer.cpp 
CXX src/caffe/layers/bnll_layer.cpp 
CXX src/caffe/layers/concat_layer.cpp 
CXX src/caffe/layers/contrastive_loss_layer.cpp 
CXX src/caffe/layers/conv_layer.cpp 
CXX src/caffe/layers/cudnn_conv_layer.cpp 
CXX src/caffe/layers/cudnn_pooling_layer.cpp 
CXX src/caffe/layers/cudnn_relu_layer.cpp 
CXX src/caffe/layers/cudnn_sigmoid_layer.cpp 
CXX src/caffe/layers/cudnn_softmax_layer.cpp 
CXX src/caffe/layers/cudnn_tanh_layer.cpp 
CXX src/caffe/layers/data_layer.cpp 
CXX src/caffe/layers/deconv_layer.cpp 
CXX src/caffe/layers/dropout_layer.cpp 
CXX src/caffe/layers/dummy_data_layer.cpp 
CXX src/caffe/layers/eltwise_layer.cpp 
CXX src/caffe/layers/euclidean_loss_layer.cpp 
CXX src/caffe/layers/exp_layer.cpp 
CXX src/caffe/layers/flatten_layer.cpp 
CXX src/caffe/layers/hdf5_data_layer.cpp 
CXX src/caffe/layers/hdf5_output_layer.cpp 
CXX src/caffe/layers/hinge_loss_layer.cpp 
CXX src/caffe/layers/im2col_layer.cpp 
CXX src/caffe/layers/image_data_layer.cpp 
CXX src/caffe/layers/infogain_loss_layer.cpp 
CXX src/caffe/layers/inner_product_layer.cpp 
CXX src/caffe/layers/loss_layer.cpp 
CXX src/caffe/layers/lrn_layer.cpp 
CXX src/caffe/layers/memory_data_layer.cpp 
CXX src/caffe/layers/multinomial_logistic_loss_layer.cpp 
CXX src/caffe/layers/mvn_layer.cpp 
CXX src/caffe/layers/neuron_layer.cpp 
CXX src/caffe/layers/pooling_layer.cpp 
CXX src/caffe/layers/power_layer.cpp 
CXX src/caffe/layers/prelu_layer.cpp 
CXX src/caffe/layers/relu_layer.cpp 
CXX src/caffe/layers/sigmoid_cross_entropy_loss_layer.cpp 
CXX src/caffe/layers/sigmoid_layer.cpp 
CXX src/caffe/layers/silence_layer.cpp 
CXX src/caffe/layers/slice_layer.cpp 
CXX src/caffe/layers/softmax_layer.cpp 
CXX src/caffe/layers/softmax_loss_layer.cpp 
CXX src/caffe/layers/split_layer.cpp 
CXX src/caffe/layers/tanh_layer.cpp 
CXX src/caffe/layers/threshold_layer.cpp 
CXX src/caffe/layers/window_data_layer.cpp 
CXX src/caffe/net.cpp 
CXX src/caffe/solver.cpp 
CXX src/caffe/syncedmem.cpp 
CXX src/caffe/util/benchmark.cpp 
CXX src/caffe/util/cudnn.cpp 
CXX src/caffe/util/db.cpp 
CXX src/caffe/util/im2col.cpp 
CXX src/caffe/util/insert_splits.cpp 
CXX src/caffe/util/io.cpp 
CXX src/caffe/util/math_functions.cpp 
CXX src/caffe/util/upgrade_proto.cpp 
NVCC src/caffe/layers/absval_layer.cu 
NVCC src/caffe/layers/base_data_layer.cu 
NVCC src/caffe/layers/bnll_layer.cu 
NVCC src/caffe/layers/concat_layer.cu 
NVCC src/caffe/layers/contrastive_loss_layer.cu 
NVCC src/caffe/layers/conv_layer.cu 
NVCC src/caffe/layers/cudnn_conv_layer.cu 
NVCC src/caffe/layers/cudnn_pooling_layer.cu 
NVCC src/caffe/layers/cudnn_relu_layer.cu 
NVCC src/caffe/layers/cudnn_sigmoid_layer.cu 
NVCC src/caffe/layers/cudnn_softmax_layer.cu 
NVCC src/caffe/layers/cudnn_tanh_layer.cu 
NVCC src/caffe/layers/deconv_layer.cu 
NVCC src/caffe/layers/dropout_layer.cu 
NVCC src/caffe/layers/eltwise_layer.cu 
NVCC src/caffe/layers/euclidean_loss_layer.cu 
NVCC src/caffe/layers/exp_layer.cu 
NVCC src/caffe/layers/hdf5_data_layer.cu 
NVCC src/caffe/layers/hdf5_output_layer.cu 
NVCC src/caffe/layers/im2col_layer.cu 
NVCC src/caffe/layers/inner_product_layer.cu 
NVCC src/caffe/layers/lrn_layer.cu 
NVCC src/caffe/layers/mvn_layer.cu 
NVCC src/caffe/layers/pooling_layer.cu 
NVCC src/caffe/layers/power_layer.cu 
NVCC src/caffe/layers/prelu_layer.cu 
NVCC src/caffe/layers/relu_layer.cu 
NVCC src/caffe/layers/sigmoid_cross_entropy_loss_layer.cu 
NVCC src/caffe/layers/sigmoid_layer.cu 
NVCC src/caffe/layers/silence_layer.cu 
NVCC src/caffe/layers/slice_layer.cu 
NVCC src/caffe/layers/softmax_layer.cu 
NVCC src/caffe/layers/softmax_loss_layer.cu 
NVCC src/caffe/layers/split_layer.cu 
NVCC src/caffe/layers/tanh_layer.cu 
NVCC src/caffe/layers/threshold_layer.cu 
NVCC src/caffe/util/im2col.cu 
NVCC src/caffe/util/math_functions.cu 
CXX tools/caffe.cpp 
CXX tools/compute_image_mean.cpp 
CXX tools/convert_imageset.cpp 
CXX tools/device_query.cpp 
CXX tools/extract_features.cpp 
CXX tools/finetune_net.cpp 
CXX tools/net_speed_benchmark.cpp 
CXX tools/test_net.cpp 
CXX tools/train_net.cpp 
CXX tools/upgrade_net_proto_binary.cpp 
CXX tools/upgrade_net_proto_text.cpp 
CXX examples/cifar10/convert_cifar_data.cpp 
CXX examples/mnist/convert_mnist_data.cpp 
CXX examples/siamese/convert_mnist_siamese_data.cpp 
CXX .build_release/src/caffe/proto/caffe.pb.cc 
AR -o .build_release/lib/libcaffe.a 
LD -o .build_release/lib/libcaffe.so 
clang: warning: argument unused during compilation: '-pthread' 
ld: warning: directory not found for option '-L/opt/intel/mkl/lib/intel64' 
Undefined symbols for architecture x86_64: 
    "cv::imread(std::string const&, int)", referenced from: 
     caffe::WindowDataLayer<float>::InternalThreadEntry() in window_data_layer.o 
     caffe::WindowDataLayer<double>::InternalThreadEntry() in window_data_layer.o 
     caffe::ReadImageToCVMat(std::string const&, int, int, bool) in io.o 
    "cv::imencode(std::string const&, cv::_InputArray const&, std::vector<unsigned char, std::allocator<unsigned char> >&, std::vector<int, std::allocator<int> > const&)", referenced from: 
     caffe::ReadImageToDatum(std::string const&, int, int, int, bool, std::string const&, caffe::Datum*) in io.o 
    "leveldb::DB::Open(leveldb::Options const&, std::string const&, leveldb::DB**)", referenced from: 
     caffe::db::LevelDB::Open(std::string const&, caffe::db::Mode) in db.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: *** [.build_release/lib/libcaffe.so] Error 1 
make: *** Waiting for unfinished jobs.... 

.............................................. ...............................

另外我試着安裝opencv 3.0,

$沖泡安裝-devel OpenCV的

但給FOLL CMake的錯誤 -

==> Installing opencv from homebrew/homebrew-science 
==> Using Homebrew-provided fortran compiler. 
This may be changed by setting the FC environment variable. 
==> Downloading https://github.com/Itseez/opencv/archive/3.0.0-beta.tar.gz 
Already downloaded: /Library/Caches/Homebrew/opencv-3.0.0-beta.tar.gz 
==> Downloading https://gist.githubusercontent.com/tdsmith/f67fd567702f2b51dacd/ 
Already downloaded: /Library/Caches/Homebrew/opencv--patch-be689ac2ce44edfb1f8f9bdaf11e3cd5933fe26e9195ff57e391e6c49b3a1607.diff 
==> Patching 
patching file modules/python/common.cmake 
Hunk #1 succeeded at 62 (offset 12 lines). 
==> cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/Cellar/opencv/3.0.0-beta -DCMAKE_ 
DPYTHON_INCLUDE_DIR=/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 
-DWITH_CUDA=ON 

CMake Error: The source directory "/tmp/opencv20150412-21783-107bcd/opencv-3.0.0-beta/macbuild/DPYTHON_INCLUDE_DIR=/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7" does not exist. 
Specify --help for usage, or press the help button on the CMake GUI. 

讚賞任何幫助。


最後我用cmake安裝了opencv3,而不是通過brew。但現在似乎有同樣的錯誤 - 未定義的符號但leveldb-

PROTOC src/caffe/proto/caffe.proto 
CXX src/caffe/blob.cpp 
CXX src/caffe/common.cpp 
CXX src/caffe/data_transformer.cpp 
CXX src/caffe/internal_thread.cpp 
CXX src/caffe/layer_factory.cpp 
CXX src/caffe/layers/absval_layer.cpp 
CXX src/caffe/layers/accuracy_layer.cpp 
CXX src/caffe/layers/argmax_layer.cpp 
CXX src/caffe/layers/base_conv_layer.cpp 
CXX src/caffe/layers/base_data_layer.cpp 
CXX src/caffe/layers/bnll_layer.cpp 
CXX src/caffe/layers/concat_layer.cpp 
CXX src/caffe/layers/contrastive_loss_layer.cpp 
CXX src/caffe/layers/conv_layer.cpp 
CXX src/caffe/layers/cudnn_conv_layer.cpp 
CXX src/caffe/layers/cudnn_pooling_layer.cpp 
CXX src/caffe/layers/cudnn_relu_layer.cpp 
CXX src/caffe/layers/cudnn_sigmoid_layer.cpp 
CXX src/caffe/layers/cudnn_softmax_layer.cpp 
CXX src/caffe/layers/cudnn_tanh_layer.cpp 
CXX src/caffe/layers/data_layer.cpp 
CXX src/caffe/layers/deconv_layer.cpp 
CXX src/caffe/layers/dropout_layer.cpp 
CXX src/caffe/layers/dummy_data_layer.cpp 
CXX src/caffe/layers/eltwise_layer.cpp 
CXX src/caffe/layers/euclidean_loss_layer.cpp 
CXX src/caffe/layers/exp_layer.cpp 
CXX src/caffe/layers/flatten_layer.cpp 
CXX src/caffe/layers/hdf5_data_layer.cpp 
CXX src/caffe/layers/hdf5_output_layer.cpp 
CXX src/caffe/layers/hinge_loss_layer.cpp 
CXX src/caffe/layers/im2col_layer.cpp 
CXX src/caffe/layers/image_data_layer.cpp 
CXX src/caffe/layers/infogain_loss_layer.cpp 
CXX src/caffe/layers/inner_product_layer.cpp 
CXX src/caffe/layers/loss_layer.cpp 
CXX src/caffe/layers/lrn_layer.cpp 
CXX src/caffe/layers/memory_data_layer.cpp 
CXX src/caffe/layers/multinomial_logistic_loss_layer.cpp 
CXX src/caffe/layers/mvn_layer.cpp 
CXX src/caffe/layers/neuron_layer.cpp 
CXX src/caffe/layers/pooling_layer.cpp 
CXX src/caffe/layers/power_layer.cpp 
CXX src/caffe/layers/prelu_layer.cpp 
CXX src/caffe/layers/relu_layer.cpp 
CXX src/caffe/layers/sigmoid_cross_entropy_loss_layer.cpp 
CXX src/caffe/layers/sigmoid_layer.cpp 
CXX src/caffe/layers/silence_layer.cpp 
CXX src/caffe/layers/slice_layer.cpp 
CXX src/caffe/layers/softmax_layer.cpp 
CXX src/caffe/layers/softmax_loss_layer.cpp 
CXX src/caffe/layers/split_layer.cpp 
CXX src/caffe/layers/tanh_layer.cpp 
CXX src/caffe/layers/threshold_layer.cpp 
CXX src/caffe/layers/window_data_layer.cpp 
CXX src/caffe/net.cpp 
CXX src/caffe/solver.cpp 
CXX src/caffe/syncedmem.cpp 
CXX src/caffe/util/benchmark.cpp 
CXX src/caffe/util/cudnn.cpp 
CXX src/caffe/util/db.cpp 
CXX src/caffe/util/im2col.cpp 
CXX src/caffe/util/insert_splits.cpp 
CXX src/caffe/util/io.cpp 
CXX src/caffe/util/math_functions.cpp 
CXX src/caffe/util/upgrade_proto.cpp 
NVCC src/caffe/layers/absval_layer.cu 
NVCC src/caffe/layers/base_data_layer.cu 
NVCC src/caffe/layers/bnll_layer.cu 
NVCC src/caffe/layers/concat_layer.cu 
NVCC src/caffe/layers/contrastive_loss_layer.cu 
NVCC src/caffe/layers/conv_layer.cu 
NVCC src/caffe/layers/cudnn_conv_layer.cu 
NVCC src/caffe/layers/cudnn_pooling_layer.cu 
NVCC src/caffe/layers/cudnn_relu_layer.cu 
NVCC src/caffe/layers/cudnn_sigmoid_layer.cu 
NVCC src/caffe/layers/cudnn_softmax_layer.cu 
NVCC src/caffe/layers/cudnn_tanh_layer.cu 
NVCC src/caffe/layers/deconv_layer.cu 
NVCC src/caffe/layers/dropout_layer.cu 
NVCC src/caffe/layers/eltwise_layer.cu 
NVCC src/caffe/layers/euclidean_loss_layer.cu 
NVCC src/caffe/layers/exp_layer.cu 
NVCC src/caffe/layers/hdf5_data_layer.cu 
NVCC src/caffe/layers/hdf5_output_layer.cu 
NVCC src/caffe/layers/im2col_layer.cu 
NVCC src/caffe/layers/inner_product_layer.cu 
NVCC src/caffe/layers/lrn_layer.cu 
NVCC src/caffe/layers/mvn_layer.cu 
NVCC src/caffe/layers/pooling_layer.cu 
NVCC src/caffe/layers/power_layer.cu 
NVCC src/caffe/layers/prelu_layer.cu 
NVCC src/caffe/layers/relu_layer.cu 
NVCC src/caffe/layers/sigmoid_cross_entropy_loss_layer.cu 
NVCC src/caffe/layers/sigmoid_layer.cu 
NVCC src/caffe/layers/silence_layer.cu 
NVCC src/caffe/layers/slice_layer.cu 
NVCC src/caffe/layers/softmax_layer.cu 
NVCC src/caffe/layers/softmax_loss_layer.cu 
NVCC src/caffe/layers/split_layer.cu 
NVCC src/caffe/layers/tanh_layer.cu 
NVCC src/caffe/layers/threshold_layer.cu 
NVCC src/caffe/util/im2col.cu 
NVCC src/caffe/util/math_functions.cu 
CXX tools/caffe.cpp 
CXX tools/compute_image_mean.cpp 
CXX tools/convert_imageset.cpp 
CXX tools/device_query.cpp 
CXX tools/extract_features.cpp 
CXX tools/finetune_net.cpp 
CXX tools/net_speed_benchmark.cpp 
CXX tools/test_net.cpp 
CXX tools/train_net.cpp 
CXX tools/upgrade_net_proto_binary.cpp 
CXX tools/upgrade_net_proto_text.cpp 
CXX examples/cifar10/convert_cifar_data.cpp 
CXX examples/mnist/convert_mnist_data.cpp 
CXX examples/siamese/convert_mnist_siamese_data.cpp 
CXX .build_release/src/caffe/proto/caffe.pb.cc 
AR -o .build_release/lib/libcaffe.a 
LD -o .build_release/lib/libcaffe.so 
clang: warning: argument unused during compilation: '-pthread' 
ld: warning: directory not found for option '-L/opt/intel/mkl/lib/intel64' 
Undefined symbols for architecture x86_64: 
    "leveldb::DB::Open(leveldb::Options const&, std::string const&, leveldb::DB**)", referenced from: 
     caffe::db::LevelDB::Open(std::string const&, caffe::db::Mode) in db.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: *** [.build_release/lib/libcaffe.so] Error 1 

我甚至嘗試重新安裝性LevelDB但是問題仍然存在。任何幫助讚賞

回答

0

我不得不恢復到opencv 2.4.11。卸載brew及其所有依賴項。加載Cuda 7.0。還使用-stdlib = libC++選項在依賴項中添加了ENV標誌。這解決了我的問題,但我仍然不知道原因。