facebookarchive / C3D

C3D is a modified version of BVLC caffe to support 3D ConvNets.
Other
1.17k stars 507 forks source link

Compilation error (cv:VideoCapture) #431

Closed raehyuk closed 5 years ago

raehyuk commented 5 years ago

Hello, I faced error when I was compiling C3D.

This is details of env. OS: ubuntu 16.04 opencv: 3.4.4 no cuda and cudnn (I modified Makefile.config) C3D 1.1

I was able to compile caffe.

below is compilation record. PROTOC src/caffe/proto/caffe.proto CXX src/caffe/common.cpp CXX src/caffe/util/insert_splits.cpp CXX src/caffe/util/cudnn.cpp CXX src/caffe/blob.cpp CXX src/caffe/util/vol2col.cpp CXX src/caffe/util/upgrade_proto.cpp CXX src/caffe/util/signal_handler.cpp CXX src/caffe/util/benchmark.cpp CXX src/caffe/util/math_functions.cpp CXX src/caffe/util/db.cpp CXX src/caffe/util/db_lmdb.cpp CXX src/caffe/util/hdf5.cpp CXX src/caffe/util/image_io.cpp CXX src/caffe/util/im2col.cpp CXX src/caffe/util/db_leveldb.cpp CXX src/caffe/util/blocking_queue.cpp CXX src/caffe/util/io.cpp CXX src/caffe/layers/silence_layer.cpp CXX src/caffe/layers/cudnn_lcn_layer.cpp CXX src/caffe/layers/im2col_layer.cpp CXX src/caffe/layers/cudnn_pooling_layer.cpp CXX src/caffe/layers/absval_layer.cpp CXX src/caffe/layers/dummy_data_layer.cpp CXX src/caffe/layers/log_layer.cpp src/caffe/util/image_io.cpp: In function ‘bool caffe::load_blob_from_binary(std::cxx11::string, caffe::Blob*) [with Dtype = float; std::cxx11::string = std::cxx11::basic_string]’: src/caffe/util/image_io.cpp:380:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&n, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:381:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&c, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:382:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&l, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:383:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&h, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:384:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&w, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:395:50: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(buff, sizeof(float), n c l h w, f); ^ src/caffe/util/image_io.cpp: In function ‘bool caffe::load_blob_from_binary(std::cxx11::string, caffe::Blob*) [with Dtype = double; std::cxx11::string = std::cxx11::basic_string]’: src/caffe/util/image_io.cpp:408:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&n, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:409:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&c, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:410:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&l, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:411:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&h, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:412:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&w, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:423:51: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(buff, sizeof(double), n c l h w, f); ^ src/caffe/util/image_io.cpp: In function ‘bool caffe::load_blob_from_uint8_binary(std::cxx11::string, caffe::Blob) [with Dtype = float; std::cxx11::string = std::cxx11::basic_string]’: src/caffe/util/image_io.cpp:436:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&n, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:437:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&c, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:438:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&l, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:439:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&h, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:440:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&w, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:455:51: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE*)’, declared with attribute warn_unused_result [-Wunused-result] fread(temp_buff, sizeof(unsigned char), count, f); ^ src/caffe/util/image_io.cpp: In function ‘bool caffe::load_blob_from_uint8_binary(std::cxx11::string, caffe::Blob) [with Dtype = double; std::cxx11::string = std::cxx11::basic_string]’: src/caffe/util/image_io.cpp:473:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&n, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:474:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&c, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:475:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&l, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:476:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&h, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:477:30: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE)’, declared with attribute warn_unused_result [-Wunused-result] fread(&w, sizeof(int), 1, f); ^ src/caffe/util/image_io.cpp:493:51: warning: ignoring return value of ‘size_t fread(void, size_t, size_t, FILE*)’, declared with attribute warn_unused_result [-Wunused-result] fread(temp_buff, sizeof(unsigned char), count, f); ^ CXX src/caffe/layers/cudnn_sigmoid_layer.cpp CXX src/caffe/layers/recurrent_layer.cpp CXX src/caffe/layers/bias_layer.cpp CXX src/caffe/layers/sigmoid_layer.cpp CXX src/caffe/layers/hdf5_data_layer.cpp CXX src/caffe/layers/tile_layer.cpp CXX src/caffe/layers/filter_layer.cpp CXX src/caffe/layers/reshape_layer.cpp CXX src/caffe/layers/power_layer.cpp CXX src/caffe/layers/deconv_layer.cpp CXX src/caffe/layers/parameter_layer.cpp CXX src/caffe/layers/split_layer.cpp CXX src/caffe/layers/pool3d_layer.cpp CXX src/caffe/layers/rnn_layer.cpp CXX src/caffe/layers/softmax_loss_layer.cpp CXX src/caffe/layers/exp_layer.cpp CXX src/caffe/layers/reduction_layer.cpp CXX src/caffe/layers/accuracy_layer.cpp CXX src/caffe/layers/hinge_loss_layer.cpp CXX src/caffe/layers/lstm_unit_layer.cpp CXX src/caffe/layers/concat_layer.cpp CXX src/caffe/layers/threshold_layer.cpp CXX src/caffe/layers/elu_layer.cpp CXX src/caffe/layers/spp_layer.cpp CXX src/caffe/layers/batch_reindex_layer.cpp CXX src/caffe/layers/slice_layer.cpp CXX src/caffe/layers/neuron_layer.cpp CXX src/caffe/layers/input_layer.cpp CXX src/caffe/layers/cudnn_tanh_layer.cpp CXX src/caffe/layers/cudnn_lrn_layer.cpp CXX src/caffe/layers/lstm_layer.cpp CXX src/caffe/layers/image_data_layer.cpp CXX src/caffe/layers/mvn_layer.cpp CXX src/caffe/layers/cudnn_relu_layer.cpp CXX src/caffe/layers/l2_normalize_layer.cpp CXX src/caffe/layers/lrn_layer.cpp CXX src/caffe/layers/relu_layer.cpp CXX src/caffe/layers/scale_layer.cpp CXX src/caffe/layers/contrastive_loss_layer.cpp CXX src/caffe/layers/multinomial_logistic_loss_layer.cpp CXX src/caffe/layers/bnll_layer.cpp CXX src/caffe/layers/flatten_layer.cpp CXX src/caffe/layers/pooling_layer.cpp CXX src/caffe/layers/hdf5_output_layer.cpp CXX src/caffe/layers/convolution3d_layer.cpp CXX src/caffe/layers/embed_layer.cpp CXX src/caffe/layers/softmax_layer.cpp CXX src/caffe/layers/window_data_layer.cpp CXX src/caffe/layers/eltwise_layer.cpp CXX src/caffe/layers/prelu_layer.cpp CXX src/caffe/layers/sigmoid_cross_entropy_loss_layer.cpp CXX src/caffe/layers/cudnn_softmax_layer.cpp CXX src/caffe/layers/euclidean_loss_layer.cpp CXX src/caffe/layers/argmax_layer.cpp CXX src/caffe/layers/batch_norm_layer.cpp CXX src/caffe/layers/memory_data_layer.cpp CXX src/caffe/layers/cudnn_conv_layer.cpp CXX src/caffe/layers/loss_layer.cpp CXX src/caffe/layers/inner_product_layer.cpp CXX src/caffe/layers/crop_layer.cpp CXX src/caffe/layers/video_data_layer.cpp CXX src/caffe/layers/black_hole_layer.cpp CXX src/caffe/layers/deconvolution3d_layer.cpp CXX src/caffe/layers/data_layer.cpp CXX src/caffe/layers/base_conv_layer.cpp CXX src/caffe/layers/base_data_layer.cpp CXX src/caffe/layers/tanh_layer.cpp CXX src/caffe/layers/infogain_loss_layer.cpp CXX src/caffe/layers/dropout_layer.cpp CXX src/caffe/layers/conv_layer.cpp CXX src/caffe/solver.cpp CXX src/caffe/syncedmem.cpp CXX src/caffe/parallel.cpp CXX src/caffe/internal_thread.cpp CXX src/caffe/solvers/adadelta_solver.cpp CXX src/caffe/solvers/nesterov_solver.cpp CXX src/caffe/solvers/adagrad_solver.cpp CXX src/caffe/solvers/sgd_solver.cpp CXX src/caffe/solvers/adam_solver.cpp CXX src/caffe/solvers/rmsprop_solver.cpp CXX src/caffe/net.cpp CXX src/caffe/data_transformer.cpp CXX src/caffe/layer.cpp CXX src/caffe/layer_factory.cpp CXX tools/upgrade_solver_proto_text.cpp CXX tools/compute_image_mean.cpp CXX tools/finetune_net.cpp CXX tools/extract_image_features.cpp CXX tools/extract_features.cpp CXX tools/net_speed_benchmark.cpp CXX tools/train_net.cpp CXX tools/upgrade_net_proto_text.cpp CXX tools/extract_all_learned_filters.cpp CXX tools/upgrade_net_proto_binary.cpp CXX tools/test_net.cpp CXX tools/extract_learned_filters.cpp CXX tools/caffe.cpp CXX tools/device_query.cpp CXX tools/convert_imageset.cpp CXX examples/siamese/convert_mnist_siamese_data.cpp CXX examples/cpp_classification/classification.cpp CXX examples/mnist/convert_mnist_data.cpp CXX examples/cifar10/convert_cifar_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.1.0.0-rc5 CXX/LD -o .build_release/tools/upgrade_solver_proto_text.bin CXX/LD -o .build_release/tools/compute_image_mean.bin CXX/LD -o .build_release/tools/finetune_net.bin CXX/LD -o .build_release/tools/upgrade_net_proto_text.bin CXX/LD -o .build_release/tools/net_speed_benchmark.bin CXX/LD -o .build_release/tools/extract_learned_filters.bin CXX/LD -o .build_release/tools/train_net.bin CXX/LD -o .build_release/tools/upgrade_net_proto_binary.bin CXX/LD -o .build_release/tools/extract_all_learned_filters.bin CXX/LD -o .build_release/tools/extract_features.bin CXX/LD -o .build_release/tools/test_net.bin CXX/LD -o .build_release/tools/caffe.bin CXX/LD -o .build_release/tools/extract_image_features.bin CXX/LD -o .build_release/tools/convert_imageset.bin CXX/LD -o .build_release/tools/device_query.bin CXX/LD -o .build_release/examples/siamese/convert_mnist_siamese_data.bin CXX/LD -o .build_release/examples/cpp_classification/classification.bin .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' CXX/LD -o .build_release/examples/mnist/convert_mnist_data.bin collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/extract_learned_filters.bin' failed make: [.build_release/tools/extract_learned_filters.bin] Error 1 make: Waiting for unfinished jobs.... .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/upgrade_net_proto_text.bin' failed make: [.build_release/tools/upgrade_net_proto_text.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/upgrade_net_proto_binary.bin' failed make: [.build_release/tools/upgrade_net_proto_binary.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/compute_image_mean.bin' failed make: [.build_release/tools/compute_image_mean.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/caffe.bin' failed make: [.build_release/tools/caffe.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/extract_features.bin' failed make: [.build_release/tools/extract_features.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/upgrade_solver_proto_text.bin' failed make: [.build_release/tools/upgrade_solver_proto_text.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/extract_all_learned_filters.bin' failed make: [.build_release/tools/extract_all_learned_filters.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/convert_imageset.bin' failed make: [.build_release/tools/convert_imageset.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:625: recipe for target '.build_release/tools/extract_image_features.bin' failed make: [.build_release/tools/extract_image_features.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:630: recipe for target '.build_release/examples/siamese/convert_mnist_siamese_data.bin' failed make: [.build_release/examples/siamese/convert_mnist_siamese_data.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:630: recipe for target '.build_release/examples/mnist/convert_mnist_data.bin' failed make: [.build_release/examples/mnist/convert_mnist_data.bin] Error 1 .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::set(int, double)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::open(cv::String const&)' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::release()' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::~VideoCapture()' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::isOpened() const' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::get(int) const' .build_release/lib/libcaffe.so: undefined reference to cv::VideoCapture::read(cv::_OutputArray const&)' .build_release/lib/libcaffe.so: undefined reference tocv::VideoCapture::VideoCapture()' collect2: error: ld returned 1 exit status Makefile:630: recipe for target '.build_release/examples/cpp_classification/classification.bin' failed make: [.build_release/examples/cpp_classification/classification.bin] Error 1

raehyuk commented 5 years ago

Sorry I solved this issue.

mourad1081 commented 5 years ago

Sorry I solved this issue.

Could you please mention what you did to solve the issue? Since you are the first result on Google, it would be nice to help every people who struggle to install C3D.

raehyuk commented 5 years ago

Hi mourad

Put below line of code into your Makefile.config LIBRARIES += opencv_core opencv_highgui opencv_imgproc opencv_videoio

raehyuk commented 5 years ago

Plus refer to this https://github.com/facebook/C3D/issues/253

They are suffering from same problem

raehyuk commented 5 years ago

This is the Makefile.config I used for compilation.

You can refer to it. Important part is CUDA_ARCH part. I used CUDA 8.0 and compatible cudnn.

Refer to http://caffe.berkeleyvision.org/installation.html

Contributions simplifying and improving our build system are welcome!

CUDA directory contains bin/ and lib/ directories that we need.

CUDA_DIR := /usr/local/cuda

CUDA architecture setting: going with all of them (up to CUDA 5.5 compatible).

For the latest architecture, you need to install CUDA >= 6.0 and uncomment

the *_50 lines below.

CUDA_ARCH := #-gencode arch=compute_20,code=sm_20 \

-gencode arch=compute_20,code=sm_21 \

-gencode arch=compute_30,code=sm_30 \

-gencode arch=compute_35,code=sm_35 \

-gencode=arch=compute_50,code=sm_50 \

-gencode=arch=compute_50,code=compute_50

CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \ -gencode arch=compute_20,code=sm_21 \ -gencode arch=compute_30,code=sm_30 \ -gencode arch=compute_35,code=sm_35 \ -gencode arch=compute_50,code=sm_50 \ -gencode arch=compute_52,code=sm_52 \ -gencode arch=compute_60,code=sm_60 \ -gencode arch=compute_61,code=sm_61 \ -gencode arch=compute_61,code=compute_61

Uncomment if your OpenCV version >= 3.0

OPENCV_VERSION := 3

BLAS choice:

atlas for ATLAS (default)

mkl for MKL

open for OpenBlas

BLAS := atlas

Custom (MKL/ATLAS/OpenBLAS) include and lib directories.

Leave commented to accept the defaults for your choice of BLAS

(which should work)!

BLAS_INCLUDE := /path/to/your/blas

BLAS_LIB := /path/to/your/blas

This is required only if you will compile the matlab interface.

MATLAB directory should contain the mex binary in /bin.

MATLAB_DIR := /usr/local

MATLAB_DIR := /Applications/MATLAB_R2012b.app

NOTE: this is required only if you will compile the python interface.

We need to be able to find Python.h and numpy/arrayobject.h.

PYTHON_INCLUDE := /usr/local/include/python2.7 \ /usr/local/lib/python2.7/dist-packages/numpy/core/include

Anaconda Python distribution is quite popular. Include path:

PYTHON_INCLUDE := $(HOME)/anaconda/include \

    # $(HOME)/anaconda/include/python2.7 \
    # $(HOME)/anaconda/lib/python2.7/site-packages/numpy/core/include

We need to be able to find libpythonX.X.so or .dylib.

PYTHON_LIB := /usr/local/lib

PYTHON_LIB := $(HOME)/anaconda/lib

Whatever else you find you need goes here.

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

BUILD_DIR := build DISTRIBUTE_DIR := distribute

Uncomment for debugging.

DEBUG := 1

The ID of the GPU that 'make runtest' will use to run unit tests.

TEST_GPUID := 0

dutran commented 5 years ago

Thanks for sharing.