Installation issue - Use of undeclared identifier "CV_LOAD_IMAGE_COLOR"

1,493 views
Skip to first unread message

Joan Figuerola Hurtado

unread,
Nov 14, 2014, 5:25:27 AM11/14/14
to caffe...@googlegroups.com
Hi all,

I'm trying to compile the Caffe project and I get the following error when I run make all

 "src/caffe/layers/window_data_layer.cpp:230:48: error: use of undeclared identifier 'CV_LOAD_IMAGE_COLOR'"

I've successfully installed all required packages described in the installation instruction. I'm trying to compile it on OS X 10.9.5.

Thanks in advance,
J


Charles Shang

unread,
Nov 15, 2014, 3:06:03 AM11/15/14
to caffe...@googlegroups.com

Which version of opencv have you installed?  
I encountered the same problem with opencv2.4.9. I solved it by using opencv2.4.10..

在 2014年11月14日星期五UTC+8下午6时25分27秒,Joan Figuerola Hurtado写道:

Joan Figuerola Hurtado

unread,
Nov 15, 2014, 8:36:06 AM11/15/14
to caffe...@googlegroups.com
Hi Charles, 

I upgraded opencv and it solved the problem. However, I'm still not able to compile it. I get the following error now:

"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"

Any ideas why this might be happening?

Thanks in advance,
J

Charles Shang

unread,
Nov 15, 2014, 8:55:21 AM11/15/14
to caffe...@googlegroups.com
As the error mssg said, I think your might not set the lib path for opencv or cuda. 
I don't know exactly how to set library path in mac. For you reference, in ubuntu you can do

     sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'

to add your/opencv/path to system ld (need reboot your system)

在 2014年11月15日星期六UTC+8下午9时36分06秒,Joan Figuerola Hurtado写道:

Joan Figuerola Hurtado

unread,
Nov 16, 2014, 4:46:20 AM11/16/14
to caffe...@googlegroups.com
I think that Opencv is properly installed now. 

I'm trying to compile with CPU only because the library cudnn it's still not available for Mac OS X. I've read the they are going to release it for Mac OS X soon though.

This is the output I get at the moment:

/usr/bin/clang++ -shared -o .build_release/lib/libcaffe.so .build_release/src/caffe/proto/caffe.pb.o .build_release/src/caffe/proto/caffe_pretty_print.pb.o .build_release/src/caffe/blob.o .build_release/src/caffe/common.o .build_release/src/caffe/data_transformer.o .build_release/src/caffe/internal_thread.o .build_release/src/caffe/layer_factory.o .build_release/src/caffe/layers/absval_layer.o .build_release/src/caffe/layers/accuracy_layer.o .build_release/src/caffe/layers/argmax_layer.o .build_release/src/caffe/layers/base_data_layer.o .build_release/src/caffe/layers/bnll_layer.o .build_release/src/caffe/layers/concat_layer.o .build_release/src/caffe/layers/contrastive_loss_layer.o .build_release/src/caffe/layers/conv_layer.o .build_release/src/caffe/layers/cudnn_conv_layer.o .build_release/src/caffe/layers/cudnn_pooling_layer.o .build_release/src/caffe/layers/cudnn_relu_layer.o .build_release/src/caffe/layers/cudnn_sigmoid_layer.o .build_release/src/caffe/layers/cudnn_softmax_layer.o .build_release/src/caffe/layers/cudnn_tanh_layer.o .build_release/src/caffe/layers/data_layer.o .build_release/src/caffe/layers/dropout_layer.o .build_release/src/caffe/layers/dummy_data_layer.o .build_release/src/caffe/layers/eltwise_layer.o .build_release/src/caffe/layers/euclidean_loss_layer.o .build_release/src/caffe/layers/flatten_layer.o .build_release/src/caffe/layers/hdf5_data_layer.o .build_release/src/caffe/layers/hdf5_output_layer.o .build_release/src/caffe/layers/hinge_loss_layer.o .build_release/src/caffe/layers/im2col_layer.o .build_release/src/caffe/layers/image_data_layer.o .build_release/src/caffe/layers/infogain_loss_layer.o .build_release/src/caffe/layers/inner_product_layer.o .build_release/src/caffe/layers/loss_layer.o .build_release/src/caffe/layers/lrn_layer.o .build_release/src/caffe/layers/memory_data_layer.o .build_release/src/caffe/layers/multinomial_logistic_loss_layer.o .build_release/src/caffe/layers/mvn_layer.o .build_release/src/caffe/layers/neuron_layer.o .build_release/src/caffe/layers/pooling_layer.o .build_release/src/caffe/layers/power_layer.o .build_release/src/caffe/layers/relu_layer.o .build_release/src/caffe/layers/sigmoid_cross_entropy_loss_layer.o .build_release/src/caffe/layers/sigmoid_layer.o .build_release/src/caffe/layers/silence_layer.o .build_release/src/caffe/layers/slice_layer.o .build_release/src/caffe/layers/softmax_layer.o .build_release/src/caffe/layers/softmax_loss_layer.o .build_release/src/caffe/layers/split_layer.o .build_release/src/caffe/layers/tanh_layer.o .build_release/src/caffe/layers/threshold_layer.o .build_release/src/caffe/layers/window_data_layer.o .build_release/src/caffe/net.o .build_release/src/caffe/solver.o .build_release/src/caffe/syncedmem.o .build_release/src/caffe/util/benchmark.o .build_release/src/caffe/util/im2col.o .build_release/src/caffe/util/insert_splits.o .build_release/src/caffe/util/io.o .build_release/src/caffe/util/math_functions.o .build_release/src/caffe/util/upgrade_proto.o -stdlib=libstdc++ -fPIC -DNDEBUG -O2 -DCPU_ONLY -I/usr/include/python2.7 -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/usr/local/include -I.build_release/src -I./src -I./include -I/System/Library/Frameworks/vecLib.framework/Versions/Current/Headers/ -Wall -Wno-sign-compare -Wno-unneeded-internal-declaration -framework vecLib -L/usr/lib -L/usr/local/lib -L/usr/lib -lglog -lgflags -lprotobuf -lleveldb -lsnappy -llmdb -lboost_system -lhdf5_hl -lhdf5 -lopencv_core -lopencv_highgui -lopencv_imgproc -lpthread -lboost_thread-mt -lcblas

Undefined symbols for architecture x86_64:

  "caffe::PowerLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::PowerLayer<double> in layer_factory.o

      vtable for caffe::PowerLayer<double> in lrn_layer.o

      vtable for caffe::PowerLayer<double> in power_layer.o

  "caffe::PowerLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::PowerLayer<double> in layer_factory.o

      vtable for caffe::PowerLayer<double> in lrn_layer.o

      vtable for caffe::PowerLayer<double> in power_layer.o

  "caffe::PowerLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::PowerLayer<float> in layer_factory.o

      vtable for caffe::PowerLayer<float> in lrn_layer.o

      vtable for caffe::PowerLayer<float> in power_layer.o

  "caffe::PowerLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::PowerLayer<float> in layer_factory.o

      vtable for caffe::PowerLayer<float> in lrn_layer.o

      vtable for caffe::PowerLayer<float> in power_layer.o

  "caffe::SliceLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SliceLayer<double> in layer_factory.o

      vtable for caffe::SliceLayer<double> in slice_layer.o

  "caffe::SliceLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SliceLayer<double> in layer_factory.o

      vtable for caffe::SliceLayer<double> in slice_layer.o

  "caffe::SliceLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SliceLayer<float> in layer_factory.o

      vtable for caffe::SliceLayer<float> in slice_layer.o

  "caffe::SliceLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SliceLayer<float> in layer_factory.o

      vtable for caffe::SliceLayer<float> in slice_layer.o

  "caffe::SplitLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SplitLayer<double> in layer_factory.o

      vtable for caffe::SplitLayer<double> in lrn_layer.o

      vtable for caffe::SplitLayer<double> in split_layer.o

  "caffe::SplitLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SplitLayer<double> in layer_factory.o

      vtable for caffe::SplitLayer<double> in lrn_layer.o

      vtable for caffe::SplitLayer<double> in split_layer.o

  "caffe::SplitLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SplitLayer<float> in layer_factory.o

      vtable for caffe::SplitLayer<float> in lrn_layer.o

      vtable for caffe::SplitLayer<float> in split_layer.o

  "caffe::SplitLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SplitLayer<float> in layer_factory.o

      vtable for caffe::SplitLayer<float> in lrn_layer.o

      vtable for caffe::SplitLayer<float> in split_layer.o

  "caffe::AbsValLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::AbsValLayer<double> in layer_factory.o

      vtable for caffe::AbsValLayer<double> in absval_layer.o

  "caffe::AbsValLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::AbsValLayer<double> in layer_factory.o

      vtable for caffe::AbsValLayer<double> in absval_layer.o

  "caffe::AbsValLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::AbsValLayer<float> in layer_factory.o

      vtable for caffe::AbsValLayer<float> in absval_layer.o

  "caffe::AbsValLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::AbsValLayer<float> in layer_factory.o

      vtable for caffe::AbsValLayer<float> in absval_layer.o

  "caffe::ConcatLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ConcatLayer<double> in layer_factory.o

      vtable for caffe::ConcatLayer<double> in concat_layer.o

  "caffe::ConcatLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ConcatLayer<double> in layer_factory.o

      vtable for caffe::ConcatLayer<double> in concat_layer.o

  "caffe::ConcatLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ConcatLayer<float> in layer_factory.o

      vtable for caffe::ConcatLayer<float> in concat_layer.o

  "caffe::ConcatLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ConcatLayer<float> in layer_factory.o

      vtable for caffe::ConcatLayer<float> in concat_layer.o

  "caffe::Im2colLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::Im2colLayer<double> in layer_factory.o

      vtable for caffe::Im2colLayer<double> in im2col_layer.o

  "caffe::Im2colLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::Im2colLayer<double> in layer_factory.o

      vtable for caffe::Im2colLayer<double> in im2col_layer.o

  "caffe::Im2colLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::Im2colLayer<float> in layer_factory.o

      vtable for caffe::Im2colLayer<float> in im2col_layer.o

  "caffe::Im2colLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::Im2colLayer<float> in layer_factory.o

      vtable for caffe::Im2colLayer<float> in im2col_layer.o

  "caffe::DropoutLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::DropoutLayer<double> in layer_factory.o

      vtable for caffe::DropoutLayer<double> in dropout_layer.o

  "caffe::DropoutLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::DropoutLayer<double> in layer_factory.o

      vtable for caffe::DropoutLayer<double> in dropout_layer.o

  "caffe::DropoutLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::DropoutLayer<float> in layer_factory.o

      vtable for caffe::DropoutLayer<float> in dropout_layer.o

  "caffe::DropoutLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::DropoutLayer<float> in layer_factory.o

      vtable for caffe::DropoutLayer<float> in dropout_layer.o

  "caffe::EltwiseLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::EltwiseLayer<double> in layer_factory.o

      vtable for caffe::EltwiseLayer<double> in eltwise_layer.o

      vtable for caffe::EltwiseLayer<double> in lrn_layer.o

  "caffe::EltwiseLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::EltwiseLayer<double> in layer_factory.o

      vtable for caffe::EltwiseLayer<double> in eltwise_layer.o

      vtable for caffe::EltwiseLayer<double> in lrn_layer.o

  "caffe::EltwiseLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::EltwiseLayer<float> in layer_factory.o

      vtable for caffe::EltwiseLayer<float> in eltwise_layer.o

      vtable for caffe::EltwiseLayer<float> in lrn_layer.o

  "caffe::EltwiseLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::EltwiseLayer<float> in layer_factory.o

      vtable for caffe::EltwiseLayer<float> in eltwise_layer.o

      vtable for caffe::EltwiseLayer<float> in lrn_layer.o

  "caffe::FlattenLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::FlattenLayer<double> in layer_factory.o

      vtable for caffe::FlattenLayer<double> in flatten_layer.o

  "caffe::FlattenLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::FlattenLayer<double> in layer_factory.o

      vtable for caffe::FlattenLayer<double> in flatten_layer.o

  "caffe::FlattenLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::FlattenLayer<float> in layer_factory.o

      vtable for caffe::FlattenLayer<float> in flatten_layer.o

  "caffe::FlattenLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::FlattenLayer<float> in layer_factory.o

      vtable for caffe::FlattenLayer<float> in flatten_layer.o

  "caffe::PoolingLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::PoolingLayer<double> in layer_factory.o

      vtable for caffe::PoolingLayer<double> in lrn_layer.o

      vtable for caffe::PoolingLayer<double> in pooling_layer.o

  "caffe::PoolingLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::PoolingLayer<double> in layer_factory.o

      vtable for caffe::PoolingLayer<double> in lrn_layer.o

      vtable for caffe::PoolingLayer<double> in pooling_layer.o

  "caffe::PoolingLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::PoolingLayer<float> in layer_factory.o

      vtable for caffe::PoolingLayer<float> in lrn_layer.o

      vtable for caffe::PoolingLayer<float> in pooling_layer.o

  "caffe::PoolingLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::PoolingLayer<float> in layer_factory.o

      vtable for caffe::PoolingLayer<float> in lrn_layer.o

      vtable for caffe::PoolingLayer<float> in pooling_layer.o

  "caffe::SigmoidLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SigmoidLayer<double> in layer_factory.o

      vtable for caffe::SigmoidLayer<double> in sigmoid_cross_entropy_loss_layer.o

      vtable for caffe::SigmoidLayer<double> in sigmoid_layer.o

  "caffe::SigmoidLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SigmoidLayer<double> in layer_factory.o

      vtable for caffe::SigmoidLayer<double> in sigmoid_cross_entropy_loss_layer.o

      vtable for caffe::SigmoidLayer<double> in sigmoid_layer.o

  "caffe::SigmoidLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SigmoidLayer<float> in layer_factory.o

      vtable for caffe::SigmoidLayer<float> in sigmoid_cross_entropy_loss_layer.o

      vtable for caffe::SigmoidLayer<float> in sigmoid_layer.o

  "caffe::SigmoidLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SigmoidLayer<float> in layer_factory.o

      vtable for caffe::SigmoidLayer<float> in sigmoid_cross_entropy_loss_layer.o

      vtable for caffe::SigmoidLayer<float> in sigmoid_layer.o

  "caffe::SilenceLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SilenceLayer<double> in layer_factory.o

      vtable for caffe::SilenceLayer<double> in silence_layer.o

  "caffe::SilenceLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SilenceLayer<double> in layer_factory.o

      vtable for caffe::SilenceLayer<double> in silence_layer.o

  "caffe::SilenceLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SilenceLayer<float> in layer_factory.o

      vtable for caffe::SilenceLayer<float> in silence_layer.o

  "caffe::SilenceLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SilenceLayer<float> in layer_factory.o

      vtable for caffe::SilenceLayer<float> in silence_layer.o

  "caffe::SoftmaxLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SoftmaxLayer<double> in layer_factory.o

      vtable for caffe::SoftmaxLayer<double> in softmax_layer.o

      vtable for caffe::SoftmaxLayer<double> in softmax_loss_layer.o

  "caffe::SoftmaxLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SoftmaxLayer<double> in layer_factory.o

      vtable for caffe::SoftmaxLayer<double> in softmax_layer.o

      vtable for caffe::SoftmaxLayer<double> in softmax_loss_layer.o

  "caffe::SoftmaxLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SoftmaxLayer<float> in layer_factory.o

      vtable for caffe::SoftmaxLayer<float> in softmax_layer.o

      vtable for caffe::SoftmaxLayer<float> in softmax_loss_layer.o

  "caffe::SoftmaxLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SoftmaxLayer<float> in layer_factory.o

      vtable for caffe::SoftmaxLayer<float> in softmax_layer.o

      vtable for caffe::SoftmaxLayer<float> in softmax_loss_layer.o

  "caffe::HDF5DataLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::HDF5DataLayer<double> in layer_factory.o

      vtable for caffe::HDF5DataLayer<double> in hdf5_data_layer.o

  "caffe::HDF5DataLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::HDF5DataLayer<float> in layer_factory.o

      vtable for caffe::HDF5DataLayer<float> in hdf5_data_layer.o

  "void caffe::caffe_gpu_add<double>(int, double const*, double const*, double*)", referenced from:

      caffe::Net<double>::Update() in net.o

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_add<float>(int, float const*, float const*, float*)", referenced from:

      caffe::Net<float>::Update() in net.o

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_div<double>(int, double const*, double const*, double*)", referenced from:

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_div<float>(int, float const*, float const*, float*)", referenced from:

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_dot<double>(int, double const*, double const*, double*)", referenced from:

      caffe::Layer<double>::Forward(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*) in dummy_data_layer.o

      caffe::Layer<double>::Forward(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*) in lrn_layer.o

      caffe::Layer<double>::Forward(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*) in sigmoid_cross_entropy_loss_layer.o

      caffe::Layer<double>::Forward(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*) in softmax_loss_layer.o

      caffe::Layer<double>::Forward(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*) in net.o

  "void caffe::caffe_gpu_dot<float>(int, float const*, float const*, float*)", referenced from:

      caffe::Layer<float>::Forward(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*) in dummy_data_layer.o

      caffe::Layer<float>::Forward(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*) in lrn_layer.o

      caffe::Layer<float>::Forward(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*) in sigmoid_cross_entropy_loss_layer.o

      caffe::Layer<float>::Forward(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*) in softmax_loss_layer.o

      caffe::Layer<float>::Forward(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*) in net.o

  "caffe::ThresholdLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ThresholdLayer<double> in threshold_layer.o

  "caffe::ThresholdLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ThresholdLayer<float> in threshold_layer.o

  "void caffe::caffe_gpu_asum<double>(int, double const*, double*)", referenced from:

      caffe::Blob<double>::asum_data() const in blob.o

      caffe::Blob<double>::asum_diff() const in blob.o

  "void caffe::caffe_gpu_asum<float>(int, float const*, float*)", referenced from:

      caffe::Blob<float>::asum_data() const in blob.o

      caffe::Blob<float>::asum_diff() const in blob.o

  "void caffe::caffe_gpu_axpy<double>(int, double, double const*, double*)", referenced from:

      caffe::Blob<double>::Update() in blob.o

      caffe::SGDSolver<double>::ComputeUpdateValue() in solver.o

      caffe::NesterovSolver<double>::ComputeUpdateValue() in solver.o

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_axpy<float>(int, float, float const*, float*)", referenced from:

      caffe::Blob<float>::Update() in blob.o

      caffe::SGDSolver<float>::ComputeUpdateValue() in solver.o

      caffe::NesterovSolver<float>::ComputeUpdateValue() in solver.o

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_powx<double>(int, double const*, double, double*)", referenced from:

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_powx<float>(int, float const*, float, float*)", referenced from:

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_sign<double>(int, double const*, double*)", referenced from:

      caffe::SGDSolver<double>::ComputeUpdateValue() in solver.o

      caffe::NesterovSolver<double>::ComputeUpdateValue() in solver.o

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_sign<float>(int, float const*, float*)", referenced from:

      caffe::SGDSolver<float>::ComputeUpdateValue() in solver.o

      caffe::NesterovSolver<float>::ComputeUpdateValue() in solver.o

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "caffe::HDF5OutputLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::HDF5OutputLayer<double> in hdf5_output_layer.o

  "caffe::HDF5OutputLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::HDF5OutputLayer<double> in hdf5_output_layer.o

  "caffe::HDF5OutputLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::HDF5OutputLayer<float> in hdf5_output_layer.o

  "caffe::HDF5OutputLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::HDF5OutputLayer<float> in hdf5_output_layer.o

  "void caffe::caffe_gpu_axpby<double>(int, double, double const*, double, double*)", referenced from:

      caffe::SGDSolver<double>::ComputeUpdateValue() in solver.o

      caffe::NesterovSolver<double>::ComputeUpdateValue() in solver.o

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_axpby<float>(int, float, float const*, float, float*)", referenced from:

      caffe::SGDSolver<float>::ComputeUpdateValue() in solver.o

      caffe::NesterovSolver<float>::ComputeUpdateValue() in solver.o

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "caffe::ConvolutionLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ConvolutionLayer<double> in layer_factory.o

      vtable for caffe::ConvolutionLayer<double> in conv_layer.o

  "caffe::ConvolutionLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ConvolutionLayer<double> in layer_factory.o

      vtable for caffe::ConvolutionLayer<double> in conv_layer.o

  "caffe::ConvolutionLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ConvolutionLayer<float> in layer_factory.o

      vtable for caffe::ConvolutionLayer<float> in conv_layer.o

  "caffe::ConvolutionLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ConvolutionLayer<float> in layer_factory.o

      vtable for caffe::ConvolutionLayer<float> in conv_layer.o

  "caffe::caffe_gpu_memcpy(unsigned long, void const*, void*)", referenced from:

      caffe::SyncedMemory::cpu_data() in syncedmem.o

      caffe::SyncedMemory::mutable_cpu_data() in syncedmem.o

      caffe::SyncedMemory::to_gpu() in syncedmem.o

  "caffe::InnerProductLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::InnerProductLayer<double> in layer_factory.o

      vtable for caffe::InnerProductLayer<double> in inner_product_layer.o

  "caffe::InnerProductLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::InnerProductLayer<double> in layer_factory.o

      vtable for caffe::InnerProductLayer<double> in inner_product_layer.o

  "caffe::InnerProductLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::InnerProductLayer<float> in layer_factory.o

      vtable for caffe::InnerProductLayer<float> in inner_product_layer.o

  "caffe::InnerProductLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::InnerProductLayer<float> in layer_factory.o

      vtable for caffe::InnerProductLayer<float> in inner_product_layer.o

  "caffe::EuclideanLossLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::EuclideanLossLayer<double> in layer_factory.o

      vtable for caffe::EuclideanLossLayer<double> in euclidean_loss_layer.o

  "caffe::EuclideanLossLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::EuclideanLossLayer<double> in layer_factory.o

      vtable for caffe::EuclideanLossLayer<double> in euclidean_loss_layer.o

  "caffe::EuclideanLossLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::EuclideanLossLayer<float> in layer_factory.o

      vtable for caffe::EuclideanLossLayer<float> in euclidean_loss_layer.o

  "caffe::EuclideanLossLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::EuclideanLossLayer<float> in layer_factory.o

      vtable for caffe::EuclideanLossLayer<float> in euclidean_loss_layer.o

  "caffe::ContrastiveLossLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ContrastiveLossLayer<double> in layer_factory.o

      vtable for caffe::ContrastiveLossLayer<double> in contrastive_loss_layer.o

  "caffe::ContrastiveLossLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ContrastiveLossLayer<double> in layer_factory.o

      vtable for caffe::ContrastiveLossLayer<double> in contrastive_loss_layer.o

  "caffe::ContrastiveLossLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ContrastiveLossLayer<float> in layer_factory.o

      vtable for caffe::ContrastiveLossLayer<float> in contrastive_loss_layer.o

  "caffe::ContrastiveLossLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ContrastiveLossLayer<float> in layer_factory.o

      vtable for caffe::ContrastiveLossLayer<float> in contrastive_loss_layer.o

  "caffe::SoftmaxWithLossLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SoftmaxWithLossLayer<double> in layer_factory.o

      vtable for caffe::SoftmaxWithLossLayer<double> in softmax_loss_layer.o

  "caffe::SoftmaxWithLossLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SoftmaxWithLossLayer<double> in layer_factory.o

      vtable for caffe::SoftmaxWithLossLayer<double> in softmax_loss_layer.o

  "caffe::SoftmaxWithLossLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SoftmaxWithLossLayer<float> in layer_factory.o

      vtable for caffe::SoftmaxWithLossLayer<float> in softmax_loss_layer.o

  "caffe::SoftmaxWithLossLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SoftmaxWithLossLayer<float> in layer_factory.o

      vtable for caffe::SoftmaxWithLossLayer<float> in softmax_loss_layer.o

  "void caffe::caffe_gpu_add_scalar<double>(int, double, double*)", referenced from:

      caffe::AdaGradSolver<double>::ComputeUpdateValue() in solver.o

  "void caffe::caffe_gpu_add_scalar<float>(int, float, float*)", referenced from:

      caffe::AdaGradSolver<float>::ComputeUpdateValue() in solver.o

  "caffe::BasePrefetchingDataLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::WindowDataLayer<double> in layer_factory.o

      vtable for caffe::ImageDataLayer<double> in layer_factory.o

      vtable for caffe::DataLayer<double> in layer_factory.o

      vtable for caffe::BasePrefetchingDataLayer<double> in base_data_layer.o

      vtable for caffe::DataLayer<double> in data_layer.o

      vtable for caffe::BasePrefetchingDataLayer<double> in data_layer.o

      vtable for caffe::ImageDataLayer<double> in image_data_layer.o

      ...

  "caffe::BasePrefetchingDataLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::WindowDataLayer<float> in layer_factory.o

      vtable for caffe::ImageDataLayer<float> in layer_factory.o

      vtable for caffe::DataLayer<float> in layer_factory.o

      vtable for caffe::BasePrefetchingDataLayer<float> in base_data_layer.o

      vtable for caffe::DataLayer<float> in data_layer.o

      vtable for caffe::BasePrefetchingDataLayer<float> in data_layer.o

      vtable for caffe::ImageDataLayer<float> in image_data_layer.o

      ...

  "caffe::SigmoidCrossEntropyLossLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SigmoidCrossEntropyLossLayer<double> in layer_factory.o

      vtable for caffe::SigmoidCrossEntropyLossLayer<double> in sigmoid_cross_entropy_loss_layer.o

  "caffe::SigmoidCrossEntropyLossLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::SigmoidCrossEntropyLossLayer<double> in layer_factory.o

      vtable for caffe::SigmoidCrossEntropyLossLayer<double> in sigmoid_cross_entropy_loss_layer.o

  "caffe::SigmoidCrossEntropyLossLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SigmoidCrossEntropyLossLayer<float> in layer_factory.o

      vtable for caffe::SigmoidCrossEntropyLossLayer<float> in sigmoid_cross_entropy_loss_layer.o

  "caffe::SigmoidCrossEntropyLossLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::SigmoidCrossEntropyLossLayer<float> in layer_factory.o

      vtable for caffe::SigmoidCrossEntropyLossLayer<float> in sigmoid_cross_entropy_loss_layer.o

  "caffe::LRNLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::LRNLayer<double> in layer_factory.o

      vtable for caffe::LRNLayer<double> in lrn_layer.o

  "caffe::LRNLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::LRNLayer<double> in layer_factory.o

      vtable for caffe::LRNLayer<double> in lrn_layer.o

  "caffe::LRNLayer<double>::CrossChannelForward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::LRNLayer<double> in layer_factory.o

      vtable for caffe::LRNLayer<double> in lrn_layer.o

  "caffe::LRNLayer<double>::CrossChannelBackward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::LRNLayer<double> in layer_factory.o

      vtable for caffe::LRNLayer<double> in lrn_layer.o

  "caffe::LRNLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::LRNLayer<float> in layer_factory.o

      vtable for caffe::LRNLayer<float> in lrn_layer.o

  "caffe::LRNLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::LRNLayer<float> in layer_factory.o

      vtable for caffe::LRNLayer<float> in lrn_layer.o

  "caffe::LRNLayer<float>::CrossChannelForward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::LRNLayer<float> in layer_factory.o

      vtable for caffe::LRNLayer<float> in lrn_layer.o

  "caffe::LRNLayer<float>::CrossChannelBackward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::LRNLayer<float> in layer_factory.o

      vtable for caffe::LRNLayer<float> in lrn_layer.o

  "caffe::MVNLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::MVNLayer<double> in layer_factory.o

      vtable for caffe::MVNLayer<double> in mvn_layer.o

  "caffe::MVNLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::MVNLayer<double> in layer_factory.o

      vtable for caffe::MVNLayer<double> in mvn_layer.o

  "caffe::MVNLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::MVNLayer<float> in layer_factory.o

      vtable for caffe::MVNLayer<float> in mvn_layer.o

  "caffe::MVNLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::MVNLayer<float> in layer_factory.o

      vtable for caffe::MVNLayer<float> in mvn_layer.o

  "caffe::BNLLLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::BNLLLayer<double> in layer_factory.o

      vtable for caffe::BNLLLayer<double> in bnll_layer.o

  "caffe::BNLLLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::BNLLLayer<double> in layer_factory.o

      vtable for caffe::BNLLLayer<double> in bnll_layer.o

  "caffe::BNLLLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::BNLLLayer<float> in layer_factory.o

      vtable for caffe::BNLLLayer<float> in bnll_layer.o

  "caffe::BNLLLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::BNLLLayer<float> in layer_factory.o

      vtable for caffe::BNLLLayer<float> in bnll_layer.o

  "caffe::ReLULayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ReLULayer<double> in layer_factory.o

      vtable for caffe::ReLULayer<double> in relu_layer.o

  "caffe::ReLULayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::ReLULayer<double> in layer_factory.o

      vtable for caffe::ReLULayer<double> in relu_layer.o

  "caffe::ReLULayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ReLULayer<float> in layer_factory.o

      vtable for caffe::ReLULayer<float> in relu_layer.o

  "caffe::ReLULayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::ReLULayer<float> in layer_factory.o

      vtable for caffe::ReLULayer<float> in relu_layer.o

  "caffe::TanHLayer<double>::Forward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::TanHLayer<double> in layer_factory.o

      vtable for caffe::TanHLayer<double> in tanh_layer.o

  "caffe::TanHLayer<double>::Backward_gpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> >*)", referenced from:

      vtable for caffe::TanHLayer<double> in layer_factory.o

      vtable for caffe::TanHLayer<double> in tanh_layer.o

  "caffe::TanHLayer<float>::Forward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::TanHLayer<float> in layer_factory.o

      vtable for caffe::TanHLayer<float> in tanh_layer.o

  "caffe::TanHLayer<float>::Backward_gpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> >*)", referenced from:

      vtable for caffe::TanHLayer<float> in layer_factory.o

      vtable for caffe::TanHLayer<float> in tanh_layer.o

  "google::protobuf::internal::kEmptyString", referenced from:

      caffe::protobuf_AddDesc_caffe_2eproto() in caffe.pb.o

      caffe::Datum::Datum() in caffe.pb.o

      caffe::NetParameter::NetParameter() in caffe.pb.o

      caffe::SolverState::SolverState() in caffe.pb.o

      caffe::LayerParameter::LayerParameter() in caffe.pb.o

      caffe::TransformationParameter::TransformationParameter() in caffe.pb.o

      caffe::DataParameter::DataParameter() in caffe.pb.o

      ...

  "_cublasCreate_v2", referenced from:

      caffe::Caffe::Caffe() in common.o

      caffe::Caffe::SetDevice(int) in common.o

  "_cublasDestroy_v2", referenced from:

      caffe::Caffe::~Caffe() in common.o

      caffe::Caffe::SetDevice(int) in common.o

  "_cudaEventCreate", referenced from:

      caffe::Timer::Init() in benchmark.o

  "_cudaEventDestroy", referenced from:

      caffe::Timer::~Timer() in benchmark.o

  "_cudaEventElapsedTime", referenced from:

      caffe::Timer::MilliSeconds() in benchmark.o

  "_cudaEventRecord", referenced from:

      caffe::Timer::Start() in benchmark.o

      caffe::Timer::Stop() in benchmark.o

  "_cudaEventSynchronize", referenced from:

      caffe::Timer::Stop() in benchmark.o

  "_cudaFree", referenced from:

      caffe::SyncedMemory::~SyncedMemory() in syncedmem.o

  "_cudaGetDevice", referenced from:

      caffe::Caffe::SetDevice(int) in common.o

      caffe::Caffe::DeviceQuery() in common.o

  "_cudaGetDeviceProperties", referenced from:

      caffe::Caffe::DeviceQuery() in common.o

  "_cudaGetErrorString", referenced from:

      caffe::Caffe::SetDevice(int) in common.o

      caffe::Caffe::DeviceQuery() in common.o

      caffe::SyncedMemory::~SyncedMemory() in syncedmem.o

      caffe::SyncedMemory::to_gpu() in syncedmem.o

      caffe::caffe_gpu_memset(unsigned long, int, void*) in syncedmem.o

      caffe::Timer::Init() in benchmark.o

      caffe::Timer::~Timer() in benchmark.o

      ...

  "_cudaMalloc", referenced from:

      caffe::SyncedMemory::to_gpu() in syncedmem.o

  "_cudaMemcpy", referenced from:

      void caffe::caffe_copy<int>(int, int const*, int*) in math_functions.o

      void caffe::caffe_copy<unsigned int>(int, unsigned int const*, unsigned int*) in math_functions.o

      void caffe::caffe_copy<float>(int, float const*, float*) in math_functions.o

      void caffe::caffe_copy<double>(int, double const*, double*) in math_functions.o

  "_cudaMemset", referenced from:

      caffe::caffe_gpu_memset(unsigned long, int, void*) in syncedmem.o

  "_cudaSetDevice", referenced from:

      caffe::Caffe::SetDevice(int) in common.o

  "_curandCreateGenerator", referenced from:

      caffe::Caffe::Caffe() in common.o

      caffe::Caffe::SetDevice(int) in common.o

  "_curandDestroyGenerator", referenced from:

      caffe::Caffe::~Caffe() in common.o

      caffe::Caffe::SetDevice(int) in common.o

  "_curandSetGeneratorOffset", referenced from:

      caffe::Caffe::set_random_seed(unsigned int) in common.o

  "_curandSetPseudoRandomGeneratorSeed", referenced from:

      caffe::Caffe::Caffe() in common.o

      caffe::Caffe::set_random_seed(unsigned int) in common.o

      caffe::Caffe::SetDevice(int) in common.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


Thanks in advance,

J

Reply all
Reply to author
Forward
0 new messages