Ncnn: error when make ncnn

Created on 20 Apr 2020  ·  4Comments  ·  Source: Tencent/ncnn

[ 1%] Running C++ protocol buffer compiler on caffe.proto
[ 1%] Built target generate-spirv
[ 1%] Running C++ protocol buffer compiler on onnx.proto
[ 2%] Building CXX object tools/mxnet/CMakeFiles/mxnet2ncnn.dir/mxnet2ncnn.cpp.o
[ 3%] Building CXX object src/CMakeFiles/ncnn.dir/allocator.cpp.o
[ 3%] Building CXX object src/CMakeFiles/ncnn.dir/command.cpp.o
[ 3%] Building CXX object src/CMakeFiles/ncnn.dir/blob.cpp.o
[ 4%] Building CXX object src/CMakeFiles/ncnn.dir/cpu.cpp.o
[ 4%] Building CXX object src/CMakeFiles/ncnn.dir/datareader.cpp.o
Scanning dependencies of target onnx2ncnn
[ 5%] Building CXX object tools/onnx/CMakeFiles/onnx2ncnn.dir/onnx2ncnn.cpp.o
[ 6%] Building CXX object src/CMakeFiles/ncnn.dir/gpu.cpp.o
Scanning dependencies of target caffe2ncnn
[ 7%] Building CXX object src/CMakeFiles/ncnn.dir/mat.cpp.o
[ 7%] Building CXX object src/CMakeFiles/ncnn.dir/layer.cpp.o
[ 7%] Building CXX object src/CMakeFiles/ncnn.dir/mat_pixel.cpp.o
[ 7%] Building CXX object tools/caffe/CMakeFiles/caffe2ncnn.dir/caffe2ncnn.cpp.o
In file included from /home/kaixuan/workspace/ncnn/tools/onnx/onnx2ncnn.cpp:31:0:
/home/kaixuan/workspace/ncnn/build/tools/onnx/onnx.pb.h:10:40: fatal error: google/protobuf/port_def.inc: No such file or directory
#include
^
compilation terminated.
In file included from /home/kaixuan/workspace/ncnn/tools/caffe/caffe2ncnn.cpp:34:0:
/home/kaixuan/workspace/ncnn/build/tools/caffe/caffe.pb.h:10:40: fatal error: google/protobuf/port_def.inc: No such file or directory
#include
^
compilation terminated.
[ 8%] Building CXX object src/CMakeFiles/ncnn.dir/mat_pixel_resize.cpp.o
[ 8%] Building CXX object src/CMakeFiles/ncnn.dir/mat_pixel_rotate.cpp.o
make[2]: * [tools/caffe/CMakeFiles/caffe2ncnn.dir/caffe2ncnn.cpp.o] Error 1
make[1]:
[tools/caffe/CMakeFiles/caffe2ncnn.dir/all] Error 2
make[1]:
Waiting for unfinished jobs....
[ 9%] Building CXX object src/CMakeFiles/ncnn.dir/modelbin.cpp.o
make[2]:
[tools/onnx/CMakeFiles/onnx2ncnn.dir/onnx2ncnn.cpp.o] Error 1
make[1]:
[tools/onnx/CMakeFiles/onnx2ncnn.dir/all] Error 2
[ 9%] Building CXX object src/CMakeFiles/ncnn.dir/net.cpp.o
[ 10%] Building CXX object src/CMakeFiles/ncnn.dir/opencv.cpp.o
[ 10%] Building CXX object src/CMakeFiles/ncnn.dir/option.cpp.o
[ 11%] Building CXX object src/CMakeFiles/ncnn.dir/paramdict.cpp.o
[ 11%] Building CXX object src/CMakeFiles/ncnn.dir/pipeline.cpp.o
[ 11%] Building CXX object src/CMakeFiles/ncnn.dir/benchmark.cpp.o
[ 12%] Building CXX object src/CMakeFiles/ncnn.dir/layer/absval.cpp.o
[ 12%] Building CXX object src/CMakeFiles/ncnn.dir/layer/batchnorm.cpp.o
[ 13%] Building CXX object src/CMakeFiles/ncnn.dir/layer/bias.cpp.o
[ 13%] Building CXX object src/CMakeFiles/ncnn.dir/layer/bnll.cpp.o
[ 14%] Building CXX object src/CMakeFiles/ncnn.dir/layer/concat.cpp.o
[ 14%] Building CXX object src/CMakeFiles/ncnn.dir/layer/convolution.cpp.o
[ 15%] Building CXX object src/CMakeFiles/ncnn.dir/layer/x86/convolution_x86.cpp.o
[ 15%] Building CXX object src/CMakeFiles/ncnn.dir/layer/crop.cpp.o
[ 16%] Building CXX object src/CMakeFiles/ncnn.dir/layer/deconvolution.cpp.o
[ 16%] Building CXX object src/CMakeFiles/ncnn.dir/layer/dropout.cpp.o
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp: In member function ‘void ncnn::Crop::resolve_crop_roi(const ncnn::Mat&, const ncnn::Mat&, int&, int&, int&, int&, int&, int&) const’:
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:457:9: warning: unused variable ‘w’ [-Wunused-variable]
int w = bottom_blob.w;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:458:9: warning: unused variable ‘h’ [-Wunused-variable]
int h = bottom_blob.h;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp: In member function ‘void ncnn::Crop::resolve_crop_roi(const ncnn::Mat&, const int, int&, int&, int&, int&, int&, int&) const’:
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:492:9: warning: unused variable ‘w’ [-Wunused-variable]
int w = bottom_blob.w;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:493:9: warning: unused variable ‘h’ [-Wunused-variable]
int h = bottom_blob.h;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:494:9: warning: unused variable ‘channels’ [-Wunused-variable]
int channels = bottom_blob.c;
^
[ 17%] Building CXX object src/CMakeFiles/ncnn.dir/layer/eltwise.cpp.o
[ 17%] Building CXX object src/CMakeFiles/ncnn.dir/layer/elu.cpp.o
[ 18%] Building CXX object src/CMakeFiles/ncnn.dir/layer/embed.cpp.o
In file included from /home/kaixuan/workspace/ncnn/src/layer.h:23:0,
from /home/kaixuan/workspace/ncnn/src/layer/crop.h:18,
from /home/kaixuan/workspace/ncnn/src/layer/crop.cpp:15:
/home/kaixuan/workspace/ncnn/src/mat.h: In member function ‘virtual int ncnn::Crop::forward(const std::vector&, std::vector&, const ncnn::Option&) const’:
/home/kaixuan/workspace/ncnn/src/mat.h:955:25: warning: ‘_outw’ may be used uninitialized in this function [-Wmaybe-uninitialized]
cstep = alignSize(w * h * elemsize, 16) / elemsize;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:194:9: note: ‘_outw’ was declared here
int _outw, _outh, _outc;
^
In file included from /home/kaixuan/workspace/ncnn/src/layer.h:23:0,
from /home/kaixuan/workspace/ncnn/src/layer/crop.h:18,
from /home/kaixuan/workspace/ncnn/src/layer/crop.cpp:15:
/home/kaixuan/workspace/ncnn/src/mat.h:1175:61: warning: ‘_coffset’ may be used uninitialized in this function [-Wmaybe-uninitialized]
return Mat(w, h, channels, (unsigned char
)data + cstep * _c * elemsize, elemsize, elempack, allocator);
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:193:29: note: ‘_coffset’ was declared here
int _woffset, _hoffset, _coffset;
^
In file included from /home/kaixuan/workspace/ncnn/src/layer.h:23:0,
from /home/kaixuan/workspace/ncnn/src/layer/crop.h:18,
from /home/kaixuan/workspace/ncnn/src/layer/crop.cpp:15:
/home/kaixuan/workspace/ncnn/src/mat.h:955:25: warning: ‘_outh’ may be used uninitialized in this function [-Wmaybe-uninitialized]
cstep = alignSize(w * h * elemsize, 16) / elemsize;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:194:16: note: ‘_outh’ was declared here
int _outw, _outh, _outc;
^
[ 18%] Building CXX object src/CMakeFiles/ncnn.dir/layer/exp.cpp.o
[ 18%] Building CXX object src/CMakeFiles/ncnn.dir/layer/flatten.cpp.o
[ 19%] Building CXX object src/CMakeFiles/ncnn.dir/layer/innerproduct.cpp.o
[ 19%] Building CXX object src/CMakeFiles/ncnn.dir/layer/input.cpp.o
[ 20%] Building CXX object src/CMakeFiles/ncnn.dir/layer/log.cpp.o
[ 20%] Building CXX object src/CMakeFiles/ncnn.dir/layer/lrn.cpp.o
[ 21%] Building CXX object src/CMakeFiles/ncnn.dir/layer/memorydata.cpp.o
[ 21%] Building CXX object src/CMakeFiles/ncnn.dir/layer/mvn.cpp.o
[ 22%] Building CXX object src/CMakeFiles/ncnn.dir/layer/pooling.cpp.o
[ 22%] Building CXX object src/CMakeFiles/ncnn.dir/layer/power.cpp.o
[ 23%] Building CXX object src/CMakeFiles/ncnn.dir/layer/prelu.cpp.o
[ 23%] Building CXX object src/CMakeFiles/ncnn.dir/layer/proposal.cpp.o
[ 24%] Building CXX object src/CMakeFiles/ncnn.dir/layer/reduction.cpp.o
[ 24%] Building CXX object src/CMakeFiles/ncnn.dir/layer/relu.cpp.o
[ 25%] Building CXX object src/CMakeFiles/ncnn.dir/layer/reshape.cpp.o
[ 25%] Building CXX object src/CMakeFiles/ncnn.dir/layer/roipooling.cpp.o
[ 25%] Building CXX object src/CMakeFiles/ncnn.dir/layer/scale.cpp.o
[ 26%] Building CXX object src/CMakeFiles/ncnn.dir/layer/sigmoid.cpp.o
[ 26%] Building CXX object src/CMakeFiles/ncnn.dir/layer/slice.cpp.o
[ 27%] Building CXX object src/CMakeFiles/ncnn.dir/layer/softmax.cpp.o
[ 27%] Building CXX object src/CMakeFiles/ncnn.dir/layer/split.cpp.o
[ 28%] Building CXX object src/CMakeFiles/ncnn.dir/layer/tanh.cpp.o
[ 28%] Building CXX object src/CMakeFiles/ncnn.dir/layer/threshold.cpp.o
[ 29%] Building CXX object src/CMakeFiles/ncnn.dir/layer/lstm.cpp.o
[ 29%] Building CXX object src/CMakeFiles/ncnn.dir/layer/binaryop.cpp.o
[ 30%] Building CXX object src/CMakeFiles/ncnn.dir/layer/unaryop.cpp.o
[ 30%] Building CXX object src/CMakeFiles/ncnn.dir/layer/convolutiondepthwise.cpp.o
[ 31%] Building CXX object src/CMakeFiles/ncnn.dir/layer/x86/convolutiondepthwise_x86.cpp.o
[ 31%] Building CXX object src/CMakeFiles/ncnn.dir/layer/padding.cpp.o
[ 32%] Building CXX object src/CMakeFiles/ncnn.dir/layer/squeeze.cpp.o
[ 32%] Building CXX object src/CMakeFiles/ncnn.dir/layer/expanddims.cpp.o
[ 32%] Linking CXX executable mxnet2ncnn
[ 32%] Building CXX object src/CMakeFiles/ncnn.dir/layer/normalize.cpp.o
[ 32%] Built target mxnet2ncnn
[ 33%] Building CXX object src/CMakeFiles/ncnn.dir/layer/permute.cpp.o
[ 33%] Building CXX object src/CMakeFiles/ncnn.dir/layer/priorbox.cpp.o
[ 34%] Building CXX object src/CMakeFiles/ncnn.dir/layer/detectionoutput.cpp.o
[ 34%] Building CXX object src/CMakeFiles/ncnn.dir/layer/interp.cpp.o
[ 35%] Building CXX object src/CMakeFiles/ncnn.dir/layer/deconvolutiondepthwise.cpp.o
[ 35%] Building CXX object src/CMakeFiles/ncnn.dir/layer/shufflechannel.cpp.o
[ 36%] Building CXX object src/CMakeFiles/ncnn.dir/layer/instancenorm.cpp.o
[ 36%] Building CXX object src/CMakeFiles/ncnn.dir/layer/clip.cpp.o
[ 37%] Building CXX object src/CMakeFiles/ncnn.dir/layer/reorg.cpp.o
[ 37%] Building CXX object src/CMakeFiles/ncnn.dir/layer/yolodetectionoutput.cpp.o
[ 38%] Building CXX object src/CMakeFiles/ncnn.dir/layer/quantize.cpp.o
[ 38%] Building CXX object src/CMakeFiles/ncnn.dir/layer/dequantize.cpp.o
[ 39%] Building CXX object src/CMakeFiles/ncnn.dir/layer/yolov3detectionoutput.cpp.o
[ 39%] Building CXX object src/CMakeFiles/ncnn.dir/layer/psroipooling.cpp.o
[ 39%] Building CXX object src/CMakeFiles/ncnn.dir/layer/packing.cpp.o
[ 40%] Building CXX object src/CMakeFiles/ncnn.dir/layer/requantize.cpp.o
[ 40%] Building CXX object src/CMakeFiles/ncnn.dir/layer/cast.cpp.o
[ 41%] Building CXX object src/CMakeFiles/ncnn.dir/layer/x86/cast_x86.cpp.o
[ 41%] Building CXX object src/CMakeFiles/ncnn.dir/layer/hardsigmoid.cpp.o
[ 42%] Building CXX object src/CMakeFiles/ncnn.dir/layer/selu.cpp.o
[ 42%] Building CXX object src/CMakeFiles/ncnn.dir/layer/hardswish.cpp.o
[ 43%] Building CXX object src/CMakeFiles/ncnn.dir/layer/noop.cpp.o
[ 43%] Building CXX object src/CMakeFiles/ncnn.dir/layer/pixelshuffle.cpp.o
[ 44%] Building CXX object src/CMakeFiles/ncnn.dir/layer/deepcopy.cpp.o
[ 44%] Linking CXX static library libncnn.a
[ 44%] Built target ncnn
make: *
[all] Error 2

Most helpful comment

There is something wrong with your protobuf installation

try removing your current protobuf, and then reinstall protobuf from your distribution package

sudo apt-get install libprotobuf-dev protobuf-compiler
sudo yum install protobuf-devel protobuf-compiler

All 4 comments

There is something wrong with your protobuf installation

try removing your current protobuf, and then reinstall protobuf from your distribution package

sudo apt-get install libprotobuf-dev protobuf-compiler
sudo yum install protobuf-devel protobuf-compiler

@nihui yeah ,it works ~Thanks!! but something else wrong..

maybe the opencv

0%] Built target generate-spirv
[ 1%] Building CXX object src/CMakeFiles/ncnn.dir/allocator.cpp.o
[ 1%] Building CXX object src/CMakeFiles/ncnn.dir/blob.cpp.o
[ 1%] Building CXX object src/CMakeFiles/ncnn.dir/command.cpp.o
[ 2%] Building CXX object src/CMakeFiles/ncnn.dir/cpu.cpp.o
[ 2%] Building CXX object src/CMakeFiles/ncnn.dir/datareader.cpp.o
[ 3%] Building CXX object src/CMakeFiles/ncnn.dir/gpu.cpp.o
[ 3%] Building CXX object src/CMakeFiles/ncnn.dir/layer.cpp.o
[ 4%] Building CXX object src/CMakeFiles/ncnn.dir/mat.cpp.o
[ 4%] Building CXX object src/CMakeFiles/ncnn.dir/mat_pixel.cpp.o
[ 5%] Building CXX object src/CMakeFiles/ncnn.dir/mat_pixel_resize.cpp.o
[ 5%] Building CXX object src/CMakeFiles/ncnn.dir/mat_pixel_rotate.cpp.o
[ 6%] Building CXX object src/CMakeFiles/ncnn.dir/modelbin.cpp.o
[ 6%] Building CXX object src/CMakeFiles/ncnn.dir/net.cpp.o
[ 7%] Building CXX object src/CMakeFiles/ncnn.dir/opencv.cpp.o
[ 7%] Building CXX object src/CMakeFiles/ncnn.dir/option.cpp.o
[ 8%] Building CXX object src/CMakeFiles/ncnn.dir/paramdict.cpp.o
[ 8%] Building CXX object src/CMakeFiles/ncnn.dir/pipeline.cpp.o
[ 8%] Building CXX object src/CMakeFiles/ncnn.dir/benchmark.cpp.o
[ 9%] Building CXX object src/CMakeFiles/ncnn.dir/layer/absval.cpp.o
[ 9%] Building CXX object src/CMakeFiles/ncnn.dir/layer/batchnorm.cpp.o
[ 10%] Building CXX object src/CMakeFiles/ncnn.dir/layer/bias.cpp.o
[ 10%] Building CXX object src/CMakeFiles/ncnn.dir/layer/bnll.cpp.o
[ 11%] Building CXX object src/CMakeFiles/ncnn.dir/layer/concat.cpp.o
[ 11%] Building CXX object src/CMakeFiles/ncnn.dir/layer/convolution.cpp.o
[ 12%] Building CXX object src/CMakeFiles/ncnn.dir/layer/x86/convolution_x86.cpp.o
[ 12%] Building CXX object src/CMakeFiles/ncnn.dir/layer/crop.cpp.o
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp: In member function ‘void ncnn::Crop::resolve_crop_roi(const ncnn::Mat&, const ncnn::Mat&, int&, int&, int&, int&, int&, int&) const’:
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:457:9: warning: unused variable ‘w’ [-Wunused-variable]
int w = bottom_blob.w;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:458:9: warning: unused variable ‘h’ [-Wunused-variable]
int h = bottom_blob.h;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp: In member function ‘void ncnn::Crop::resolve_crop_roi(const ncnn::Mat&, const int, int&, int&, int&, int&, int&, int&) const’:
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:492:9: warning: unused variable ‘w’ [-Wunused-variable]
int w = bottom_blob.w;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:493:9: warning: unused variable ‘h’ [-Wunused-variable]
int h = bottom_blob.h;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:494:9: warning: unused variable ‘channels’ [-Wunused-variable]
int channels = bottom_blob.c;
^
In file included from /home/kaixuan/workspace/ncnn/src/layer.h:23:0,
from /home/kaixuan/workspace/ncnn/src/layer/crop.h:18,
from /home/kaixuan/workspace/ncnn/src/layer/crop.cpp:15:
/home/kaixuan/workspace/ncnn/src/mat.h: In member function ‘virtual int ncnn::Crop::forward(const std::vector&, std::vector&, const ncnn::Option&) const’:
/home/kaixuan/workspace/ncnn/src/mat.h:955:25: warning: ‘_outh’ may be used uninitialized in this function [-Wmaybe-uninitialized]
cstep = alignSize(w * h * elemsize, 16) / elemsize;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:194:16: note: ‘_outh’ was declared here
int _outw, _outh, _outc;
^
In file included from /home/kaixuan/workspace/ncnn/src/layer.h:23:0,
from /home/kaixuan/workspace/ncnn/src/layer/crop.h:18,
from /home/kaixuan/workspace/ncnn/src/layer/crop.cpp:15:
/home/kaixuan/workspace/ncnn/src/mat.h:955:25: warning: ‘_outw’ may be used uninitialized in this function [-Wmaybe-uninitialized]
cstep = alignSize(w * h * elemsize, 16) / elemsize;
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:194:9: note: ‘_outw’ was declared here
int _outw, _outh, _outc;
^
In file included from /home/kaixuan/workspace/ncnn/src/layer.h:23:0,
from /home/kaixuan/workspace/ncnn/src/layer/crop.h:18,
from /home/kaixuan/workspace/ncnn/src/layer/crop.cpp:15:
/home/kaixuan/workspace/ncnn/src/mat.h:1175:61: warning: ‘_coffset’ may be used uninitialized in this function [-Wmaybe-uninitialized]
return Mat(w, h, channels, (unsigned char
)data + cstep * _c * elemsize, elemsize, elempack, allocator);
^
/home/kaixuan/workspace/ncnn/src/layer/crop.cpp:193:29: note: ‘_coffset’ was declared here
int _woffset, _hoffset, _coffset;
^
[ 13%] Building CXX object src/CMakeFiles/ncnn.dir/layer/deconvolution.cpp.o
[ 13%] Building CXX object src/CMakeFiles/ncnn.dir/layer/dropout.cpp.o
[ 14%] Building CXX object src/CMakeFiles/ncnn.dir/layer/eltwise.cpp.o
[ 14%] Building CXX object src/CMakeFiles/ncnn.dir/layer/elu.cpp.o
[ 15%] Building CXX object src/CMakeFiles/ncnn.dir/layer/embed.cpp.o
[ 15%] Building CXX object src/CMakeFiles/ncnn.dir/layer/exp.cpp.o
[ 15%] Building CXX object src/CMakeFiles/ncnn.dir/layer/flatten.cpp.o
[ 16%] Building CXX object src/CMakeFiles/ncnn.dir/layer/innerproduct.cpp.o
[ 16%] Building CXX object src/CMakeFiles/ncnn.dir/layer/input.cpp.o
[ 17%] Building CXX object src/CMakeFiles/ncnn.dir/layer/log.cpp.o
[ 17%] Building CXX object src/CMakeFiles/ncnn.dir/layer/lrn.cpp.o
[ 18%] Building CXX object src/CMakeFiles/ncnn.dir/layer/memorydata.cpp.o
[ 18%] Building CXX object src/CMakeFiles/ncnn.dir/layer/mvn.cpp.o
[ 19%] Building CXX object src/CMakeFiles/ncnn.dir/layer/pooling.cpp.o
[ 19%] Building CXX object src/CMakeFiles/ncnn.dir/layer/power.cpp.o
[ 20%] Building CXX object src/CMakeFiles/ncnn.dir/layer/prelu.cpp.o
[ 20%] Building CXX object src/CMakeFiles/ncnn.dir/layer/proposal.cpp.o
[ 21%] Building CXX object src/CMakeFiles/ncnn.dir/layer/reduction.cpp.o
[ 21%] Building CXX object src/CMakeFiles/ncnn.dir/layer/relu.cpp.o
[ 22%] Building CXX object src/CMakeFiles/ncnn.dir/layer/reshape.cpp.o
[ 22%] Building CXX object src/CMakeFiles/ncnn.dir/layer/roipooling.cpp.o
[ 22%] Building CXX object src/CMakeFiles/ncnn.dir/layer/scale.cpp.o
[ 23%] Building CXX object src/CMakeFiles/ncnn.dir/layer/sigmoid.cpp.o
[ 23%] Building CXX object src/CMakeFiles/ncnn.dir/layer/slice.cpp.o
[ 24%] Building CXX object src/CMakeFiles/ncnn.dir/layer/softmax.cpp.o
[ 24%] Building CXX object src/CMakeFiles/ncnn.dir/layer/split.cpp.o
[ 25%] Building CXX object src/CMakeFiles/ncnn.dir/layer/tanh.cpp.o
[ 25%] Building CXX object src/CMakeFiles/ncnn.dir/layer/threshold.cpp.o
[ 26%] Building CXX object src/CMakeFiles/ncnn.dir/layer/lstm.cpp.o
[ 26%] Building CXX object src/CMakeFiles/ncnn.dir/layer/binaryop.cpp.o
[ 27%] Building CXX object src/CMakeFiles/ncnn.dir/layer/unaryop.cpp.o
[ 27%] Building CXX object src/CMakeFiles/ncnn.dir/layer/convolutiondepthwise.cpp.o
[ 28%] Building CXX object src/CMakeFiles/ncnn.dir/layer/x86/convolutiondepthwise_x86.cpp.o
[ 28%] Building CXX object src/CMakeFiles/ncnn.dir/layer/padding.cpp.o
[ 29%] Building CXX object src/CMakeFiles/ncnn.dir/layer/squeeze.cpp.o
[ 29%] Building CXX object src/CMakeFiles/ncnn.dir/layer/expanddims.cpp.o
[ 29%] Building CXX object src/CMakeFiles/ncnn.dir/layer/normalize.cpp.o
[ 30%] Building CXX object src/CMakeFiles/ncnn.dir/layer/permute.cpp.o
[ 30%] Building CXX object src/CMakeFiles/ncnn.dir/layer/priorbox.cpp.o
[ 31%] Building CXX object src/CMakeFiles/ncnn.dir/layer/detectionoutput.cpp.o
[ 31%] Building CXX object src/CMakeFiles/ncnn.dir/layer/interp.cpp.o
[ 32%] Building CXX object src/CMakeFiles/ncnn.dir/layer/deconvolutiondepthwise.cpp.o
[ 32%] Building CXX object src/CMakeFiles/ncnn.dir/layer/shufflechannel.cpp.o
[ 33%] Building CXX object src/CMakeFiles/ncnn.dir/layer/instancenorm.cpp.o
[ 33%] Building CXX object src/CMakeFiles/ncnn.dir/layer/clip.cpp.o
[ 34%] Building CXX object src/CMakeFiles/ncnn.dir/layer/reorg.cpp.o
[ 34%] Building CXX object src/CMakeFiles/ncnn.dir/layer/yolodetectionoutput.cpp.o
[ 35%] Building CXX object src/CMakeFiles/ncnn.dir/layer/quantize.cpp.o
[ 35%] Building CXX object src/CMakeFiles/ncnn.dir/layer/dequantize.cpp.o
[ 36%] Building CXX object src/CMakeFiles/ncnn.dir/layer/yolov3detectionoutput.cpp.o
[ 36%] Building CXX object src/CMakeFiles/ncnn.dir/layer/psroipooling.cpp.o
[ 36%] Building CXX object src/CMakeFiles/ncnn.dir/layer/packing.cpp.o
[ 37%] Building CXX object src/CMakeFiles/ncnn.dir/layer/requantize.cpp.o
[ 37%] Building CXX object src/CMakeFiles/ncnn.dir/layer/cast.cpp.o
[ 38%] Building CXX object src/CMakeFiles/ncnn.dir/layer/x86/cast_x86.cpp.o
[ 38%] Building CXX object src/CMakeFiles/ncnn.dir/layer/hardsigmoid.cpp.o
[ 39%] Building CXX object src/CMakeFiles/ncnn.dir/layer/selu.cpp.o
[ 39%] Building CXX object src/CMakeFiles/ncnn.dir/layer/hardswish.cpp.o
[ 40%] Building CXX object src/CMakeFiles/ncnn.dir/layer/noop.cpp.o
[ 40%] Building CXX object src/CMakeFiles/ncnn.dir/layer/pixelshuffle.cpp.o
[ 41%] Building CXX object src/CMakeFiles/ncnn.dir/layer/deepcopy.cpp.o
[ 41%] Linking CXX static library libncnn.a
[ 41%] Built target ncnn
Scanning dependencies of target benchncnn
[ 41%] Building CXX object benchmark/CMakeFiles/benchncnn.dir/benchncnn.cpp.o
[ 41%] Linking CXX executable benchncnn
[ 41%] Built target benchncnn
Scanning dependencies of target simplepose
[ 41%] Building CXX object examples/CMakeFiles/simplepose.dir/simplepose.cpp.o
[ 41%] Linking CXX executable simplepose
CMakeFiles/simplepose.dir/simplepose.cpp.o: In function main': simplepose.cpp:(.text.startup+0x51): undefined reference tocv::imread(std::string const&, int)'
simplepose.cpp:(.text.startup+0x759): undefined reference to cv::imshow(std::string const&, cv::_InputArray const&)' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tovtable for std::__cxx11::basic_stringbuf, std::allocator >@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::assign(char const)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_create(unsigned long&, unsigned long)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::~basic_string()@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream(std::_Ios_Openmode)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::_M_replace_aux(unsigned long, unsigned long, unsigned long, char)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to std::thread::_State::~_State()@GLIBCXX_3.4.22' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::basic_istream >& std::operator>>, std::allocator >(std::basic_istream >&, std::__cxx11::basic_string, std::allocator >&)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_stringstream()@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference tostd::thread::_M_start_thread(std::unique_ptr >, void (
)())@GLIBCXX_3.4.22'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::rfind(char, unsigned long) const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::_M_append(char const, unsigned long)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long, unsigned long)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::reserve(unsigned long)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::resize(unsigned long, char)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tovtable for std::__cxx11::basic_stringstream, std::allocator >@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to VTT for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::find(char, unsigned long) const@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream()@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::_M_mutate(unsigned long, unsigned long, char const
, unsigned long)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::operator=(std::__cxx11::basic_string, std::allocator >&&)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace(unsigned long, unsigned long, char const*, unsigned long)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::find_first_of(char const, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_ostringstream()@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libQt5Widgets.so.5: undefined reference tooperator delete@CXXABI_1.3.9'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::_M_sync(char*, unsigned long, unsigned long)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tovtable for std::__cxx11::basic_istringstream, std::allocator >@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::swap(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::basic_istream >& std::getline, std::allocator >(std::basic_istream >&, std::__cxx11::basic_string, std::allocator >&, char)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::str() const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::find_first_not_of(char const
, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tostd::__throw_out_of_range_fmt(char const, ...)@GLIBCXX_3.4.20'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to typeinfo for std::thread::_State@GLIBCXX_3.4.22' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::_M_assign(std::__cxx11::basic_string, std::allocator > const&)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_not_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tostd::__cxx11::basic_stringstream, std::allocator >::basic_stringstream(std::_Ios_Openmode)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(char const*) const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference tovtable for std::__cxx11::basic_ostringstream, std::allocator >@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct(unsigned long, char)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_imgcodecs.so.4.2.0: undefined reference to std::runtime_error::runtime_error(char const*)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::find_last_of(wchar_t const
, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libQt5Core.so.5: undefined reference to std::__atomic_futex_unsigned_base::_M_futex_wait_until(unsigned int*, unsigned int, bool, std::chrono::duration<long, std::ratio<1l, 1l> >, std::chrono::duration<long, std::ratio<1l, 1000000000l> >)@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_videoio.so.4.2.0: undefined reference toVTT for std::__cxx11::basic_ostringstream, std::allocator >@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_core.so.4.2.0: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@GLIBCXX_3.4.21' /home/kaixuan/anaconda2/envs/kaipy3/lib/libopencv_highgui.so.4.2.0: undefined reference tostd::__cxx11::basic_string, std::allocator >::_M_create(unsigned long&, unsigned long)@GLIBCXX_3.4.21'
/home/kaixuan/anaconda2/envs/kaipy3/lib/libQt5Widgets.so.5: undefined reference to `operator delete(void, unsigned long)@CXXABI_1.3.9'
collect2: error: ld returned 1 exit status
make[2]:
[examples/simplepose] Error 1
make[1]:
[examples/CMakeFiles/simplepose.dir/all] Error 2
make: *
* [all] Error 2

@makaaay try to add C++11 support in the CMakeLists
set(CMAKE_CXX_STANDARD 11)

@makaaay It's a OpenCV4 issue. OpenCV4 requires C++11 thus when you linking OpenCV4 to ncnn-based executable targets (such as in ncnn/examples folder), set(CMAKE_CXX_STANDARD 11) is required.

I have pushed and make a pull request to fix this: https://github.com/Tencent/ncnn/pull/1972/commits/0b63b66dc0b45c9800ec6d8e02d3a6286541a9b9

@nihui @makaaay
Once this PR is merged, we may consider close this issue.

Was this page helpful?
0 / 5 - 0 ratings