我正在尝试在MacOS Sierra 10.13.4上构建caffe。我使用自制软件安装了所有依赖项。在成功运行cmake
之后,我得到了以下所有信息:
(全部输出的详细输出)
[81%]链接CXX共享库../../lib/libcaffe.dylib cd / Users / mehuljain / Desktop / Code / BitBucket / augmenting_appearance / src / Face_Parsing / Face_parsing_python-master / caffe_dev / build / src / caffe && /usr/local/Cellar/cmake/3.11.4/bin/cmake -E cmake_link_script CMakeFiles /caffe.dir/link.txt --verbose = 1 / Library / Developer / CommandLineTools / usr / bin / clang ++ -std = c ++ 11 -fPIC -Wall -stdlib = libc ++ -Wno-sign-compare -Wno-uninitialized -O3 -DNDEBUG -dynamiclib -Wl,-headerpad_max_install_names -compatibility_version 1.0.0 -current_version 1.0.0 -o ../../lib/libcaffe.1.0.0-rc3.dylib -install_name @ rpath / libcaffe.1.0.0-rc3.dylib CMakeFiles / caffe.dir / blob.cpp .o CMakeFiles / caffe.dir / common.cpp.o CMakeFiles / caffe.dir / data_reader.cpp.o CMakeFiles / caffe.dir / data_transformer.cpp.o CMakeFiles / caffe.dir / internal_thread.cpp.o CMakeFiles / caffe。 dir / layer.cpp.o CMakeFiles / caffe.dir / layer_factory.cpp.o CMakeFiles / caffe.dir / layers / absval_layer.cpp.o CMakeFiles / caffe.dir / layers / accuracy_layer.cpp.o CMakeFiles / caffe.dir / layer / argmax_layer.cpp.o CMakeFiles / caffe.dir / layers / base_conv_layer.cpp.o CMakeFiles / caffe.dir / layers / base_data_layer.cpp.o CMakeFiles / caffe.dir / layers / batch_norm_layer.cpp.o CMakeFiles / caffe。 dir / layers / batch_reindex_layer.cpp.o CMakeFiles / caffe.dir / layers / bias_layer.cpp.o CMakeFiles / caffe.dir /layers/bnll_layer.cpp.o CMakeFiles / caffe.dir / layers / concat_layer.cpp.o CMakeFiles / caffe.dir / layers / contrastive_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / conv_layer.cpp.o CMakeFiles / caffe .dir / layers / crop_layer.cpp.o CMakeFiles / caffe.dir / layers / cudnn_conv_layer.cpp.o CMakeFiles / caffe.dir / layers / cudnn_lcn_layer.cpp.o CMakeFiles / caffe.dir / layers / cudnn_lake_layer.cpp.o /caffe.dir/layers/cudnn_pooling_layer.cpp.o CMakeFiles / caffe.dir / layers / cudnn_relu_layer.cpp.o CMakeFiles / caffe.dir / layers / cudnn_sigmoid_layer.cpp.o CMakeFiles / caffe.dir / layers / cudnn_soft o CMakeFiles / caffe.dir / layers / cudnn_tanh_layer.cpp.o CMakeFiles / caffe.dir / layers / data_layer.cpp.o CMakeFiles / caffe.dir / layers / deconv_layer.cpp.o CMakeFiles / caffe.dir / layers / densecrf_layer。 cpp.o CMakeFiles / caffe.dir / layers / diagonalgaterecurrent_layer.cpp.o CMakeFiles / caffe.dir / layers / divide_layer.cpp.o CMakeFiles / caffe.dir / layers / domain_transform_layer.cpp.o CMakeFiles / caffe.dir / layers / dropout_layer.cpp.o CMakeFiles / caffe.dir / layers / dummy_data_layer.cpp.o CMakeFiles / caffe.dir / layers / element_hinge_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / eltwise_layer.cpp.o CMakeFiles / caffe.dir / layers / elu_layer.cpp.o CMakeFiles / caffe.dir / layers / embed_layer.cpp.o CMakeFiles / caffe.dir / layers / euclidean_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / exp_layer.cpp.o CMakeFiles / caffe.dir / layers / filter_layer.cpp .o CMakeFiles / caffe.dir / layers / flatten_layer.cpp.o CMakeFiles / caffe.dir / layers / gatelstm_layer.cpp.o CMakeFiles / caffe.dir / layers / gaterecurrent2d_layer.cpp.o CMakeFiles / caffe.dir / layers / gaterecurrent2dmask_ .cpp.o CMakeFiles / caffe.dir / layers / gaterecurrent2dmax_layer.cpp.o CMakeFiles / caffe.dir / layers / gaterecurrent2dnoind_layer.cpp.o CMakeFiles / caffe.dir / layers / gaterecurrent_layer.cpp.o CMakeFiles / caffe.dir / layer /hardsample_layer.cpp.o CMakeFiles / caffe.dir / layers / hdf5_data_layer.cpp.o CMakeFiles / caffe.dir / layers / hdf5_output_layer.cpp.o CMakeFiles / caffe.dir / layers / hinge_loss_layer.cpp.o CMakeFiles / caffe /层s / huber_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / im2col_layer.cpp.o CMakeFiles / caffe.dir / layers / image_data_layer.cpp.o CMakeFiles / caffe.dir / layers / infogain_loss_layer.cpp.o CMakeFiles / caffe。 dir / layers / inner_product_layer.cpp.o CMakeFiles / caffe.dir / layers / input_layer.cpp.o CMakeFiles / caffe.dir / layers / l2norm_layer.cpp.o CMakeFiles / caffe.dir / layers / learncrf_layer.cpp.o CMakeFiles / caffe.dir / layers / log_layer.cpp.o CMakeFiles / caffe.dir / layers / loss_layer.cpp.o CMakeFiles / caffe.dir / layers / lrn_layer.cpp.o CMakeFiles / caffe.dir / layers / manipulate_label_layer.cpp.o CMakeFiles / caffe.dir / layers / manipulate_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / mapmetric_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / mask_layer.cpp.o CMakeFiles / caffe.dir / layers / memory_data_layer.cpp.o .o CMakeFiles / caffe.dir / layers / multinomial_logistic_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / mvn_layer.cpp.o CMakeFiles / caffe.dir / layers / neuron_layer.cpp.o CMakeFiles / caffe.dir / layers / pad_layer .cpp.o CMakeFiles / caffe.dir / layers / pooling_layer.cpp.o CMakeFiles / caffe.dir / layers / power_layer.cpp.o CMakeFiles / caffe.dir / layers / prelu_layer.cpp.o CMakeFiles / caffe.dir / layers / reduction_layer.cpp.o CMakeFiles / caffe.dir / layer / regionconv_layer.cpp.o CMakeFiles / caffe.dir / layers / relu_layer.cpp.o CMakeFiles / caffe.dir / layers / reshape_layer.cpp.o CMakeFiles / caffe.dir / layers / resize_layer.cpp.o CMakeFiles / caffe。 dir / layers / scale_layer.cpp.o CMakeFiles / caffe.dir / layers / segment_data_layer.cpp.o CMakeFiles / caffe.dir / layers / sigmoid_cross_entropy_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / sigmoid_layer.cpp.o caffe.dir / layers / silence_layer.cpp.o CMakeFiles / caffe.dir / layers / slice_layer.cpp.o CMakeFiles / caffe.dir / layers / softmax_layer.cpp.o CMakeFiles / caffe.dir / layers / softmax_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / spatiallstm_layer.cpp.o CMakeFiles / caffe.dir / layers / spatialrecurrent_layer.cpp.o CMakeFiles / caffe.dir / layers / split_layer.cpp.o CMakeFiles / caffe.dir / layers / spp_layer.cpp .o CMakeFiles / caffe.dir / layers / supercrop_l ayer.cpp.o CMakeFiles / caffe.dir / layers / tanh_layer.cpp.o CMakeFiles / caffe.dir / layers / temporallstm_layer.cpp.o CMakeFiles / caffe.dir / layers / threshold_layer.cpp.o CMakeFiles / caffe.dir / layer / tile_layer.cpp.o CMakeFiles / caffe.dir / layers / triplet01_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / triplet2_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / triplet_data_layer.cpp.o CMakeFiles / caffe。 dir / layers / triplet_loss_layer.cpp.o CMakeFiles / caffe.dir / layers / upsample_layer.cpp.o CMakeFiles / caffe.dir / layers / upscale_layer.cpp.o CMakeFiles / caffe.dir / layers / weakgatelstm_layer.cpp.o CMakeFiles / caffe.dir / layers / weightwrap_layer.cpp.o CMakeFiles / caffe.dir / layers / window_data_layer.cpp.o CMakeFiles / caffe.dir / net.cpp.o CMakeFiles / caffe.dir / parallel.cpp.o CMakeFiles / caffe。 dir / solver.cpp.o CMakeFiles / caffe.dir / solvers / adadelta_solver.cpp.o CMakeFiles / caffe.dir / solvers / adagrad_solver.cpp.o CMakeFiles / caffe.dir / solvers / adam_solver.cpp.o CMakeFiles / caffe。 dir / solvers / nesterov_solver.cpp.o CMakeFiles / caffe.dir / solvers /rmsprop_solver.cpp.o CMakeFiles / caffe.dir / solvers / sgd_solver.cpp.o CMakeFiles / caffe.dir / syncedmem.cpp.o CMakeFiles / caffe.dir / util / benchmark.cpp.o CMakeFiles / caffe.dir / util /blocking_queue.cpp.o CMakeFiles / caffe.dir / util / cudnn.cpp.o CMakeFiles / caffe.dir / util / db.cpp.o CMakeFiles / caffe.dir / util / db_leveldb.cpp.o CMakeFiles / caffe.dir /util/db_lmdb.cpp.o CMakeFiles / caffe.dir / util / densecrf_pairwise.cpp.o CMakeFiles / caffe.dir / util / densecrf_util.cpp.o CMakeFiles / caffe.dir / util / hdf5.cpp.o CMakeFiles / caffe .dir / util / im2col.cpp.o CMakeFiles / caffe.dir / util / insert_splits.cpp.o CMakeFiles / caffe.dir / util / io.cpp.o CMakeFiles / caffe.dir / util / math_functions.cpp.o CMakeFiles /caffe.dir/util/permutohedral.cpp.o CMakeFiles / caffe.dir / util / signal_handler.cpp.o CMakeFiles / caffe.dir / util / upgrade_proto.cpp.o CMakeFiles / caffe.dir / util / upscale.cpp。 o CMakeFiles / caffe.dir / util / util_img.cpp.o ../../lib/libproto.a ../../lib/libproto.a /usr/local/lib/libboost_system-mt.dylib / usr /local/lib/libboost_thread-mt.dylib / usr / loc al / lib / libboost_filesystem-mt.dylib /usr/local/lib/libboost_chrono-mt.dylib /usr/local/lib/libboost_date_time-mt.dylib /usr/local/lib/libboost_atomic-mt.dylib / usr / local / lib / libglog.dylib /usr/local/lib/libgflags.dylib /usr/local/lib/libprotobuf.dylib /usr/local/Cellar/hdf5/1.10.2_1/lib/libhdf5_cpp.dylib / usr / local / Cellar / hdf5 / 1.10.2_1 / lib / libhdf5.dylib /usr/local/opt/szip/lib/libsz.dylib /usr/lib/libz.dylib /usr/lib/libdl.dylib /usr/lib/libm.dylib / usr / local / lib / liblmdb.dylib /usr/local/lib/libleveldb.dylib /usr/local/lib/libsnappy.dylib /usr/local/lib/libopencv_highgui.3.4.2.dylib -lcblas -framework加速/ usr /lib/libpython2.7.dylib /usr/local/lib/libboost_python27-mt.dylib /usr/local/lib/libopencv_videoio.3.4.2.dylib /usr/local/lib/libopencv_imgcodecs.3.4.2.dylib / usr /local/lib/libopencv_imgproc.3.4.2.dylib /usr/local/lib/libopencv_core.3.4.2.dylib
问题:
Undefined symbols for architecture x86_64:
"_H5LTfind_dataset", referenced from:
caffe::SGDSolver<float>::RestoreSolverStateFromHDF5(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in sgd_solver.cpp.o
caffe::SGDSolver<double>::RestoreSolverStateFromHDF5(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in sgd_solver.cpp.o
void caffe::hdf5_load_nd_dataset_helper<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
void caffe::hdf5_load_nd_dataset_helper<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
"_H5LTget_dataset_info", referenced from:
void caffe::hdf5_load_nd_dataset_helper<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
void caffe::hdf5_load_nd_dataset_helper<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
caffe::hdf5_load_string(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.cpp.o
"_H5LTget_dataset_ndims", referenced from:
void caffe::hdf5_load_nd_dataset_helper<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
void caffe::hdf5_load_nd_dataset_helper<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
"_H5LTmake_dataset_double", referenced from:
void caffe::hdf5_save_nd_dataset<double>(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, caffe::Blob<double> const&, bool) in hdf5.cpp.o
"_H5LTmake_dataset_float", referenced from:
void caffe::hdf5_save_nd_dataset<float>(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, caffe::Blob<float> const&, bool) in hdf5.cpp.o
"_H5LTmake_dataset_int", referenced from:
caffe::hdf5_save_int(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) in hdf5.cpp.o
"_H5LTmake_dataset_string", referenced from:
caffe::hdf5_save_string(long long, 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&) in hdf5.cpp.o
"_H5LTread_dataset_double", referenced from:
void caffe::hdf5_load_nd_dataset<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
"_H5LTread_dataset_float", referenced from:
void caffe::hdf5_load_nd_dataset<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
"_H5LTread_dataset_int", referenced from:
caffe::hdf5_load_int(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.cpp.o
"_H5LTread_dataset_string", referenced from:
caffe::hdf5_load_string(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.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]: *** [lib/libcaffe.1.0.0-rc3.dylib] Error 1
make[1]: *** [src/caffe/CMakeFiles/caffe.dir/all] Error 2
make: *** [all] Error 2
我使用otool验证了所使用的所有依赖项都是使用libc ++构建的。
如果有人可以提供帮助,请告诉我我在做什么错了?