Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Caffe编译错误 #16

Closed
chenyiman opened this issue Jun 26, 2019 · 1 comment
Closed

Caffe编译错误 #16

chenyiman opened this issue Jun 26, 2019 · 1 comment

Comments

@chenyiman
Copy link

你好,我按照顺序正确替换编译了caffe,出现以下错误,请问怎么解决?
CXX src/caffe/layers/image_data_layer.cpp
src/caffe/layers/image_data_layer.cpp: In member function ‘virtual void caffe::ImageDataLayer::DataLayerSetUp(const std::vector<caffe::Blob>&, const std::vector<caffe::Blob>&)’:
src/caffe/layers/image_data_layer.cpp:74:34: error: ’solver_rank’ is not a member of \u2018caffe::Caffe’
if (this->phase_ == TRAIN && Caffe::solver_rank() > 0 &&
^
src/caffe/layers/image_data_layer.cpp: In instantiation of ’void caffe::ImageDataLayer::DataLayerSetUp(const std::vector<caffe::Blob>&, const std::vector<caffe::Blob>&) [with Dtype = float]’:
src/caffe/layers/image_data_layer.cpp:200:1: required from here
src/caffe/layers/image_data_layer.cpp:101:21: error: request for member ’size’ in ’((caffe::ImageDataLayer*)this)->caffe::ImageDataLayer::.caffe::BasePrefetchingDataLayer::prefetch_’, which is of non-class type \u2018caffe::Batch [3]’
for (int i = 0; i < this->prefetch_.size(); ++i) {
^
src/caffe/layers/image_data_layer.cpp:102:23: error: base operand of ’->’ has non-pointer type ’caffe::Batch’
this->prefetch_[i]->data_.Reshape(top_shape);
^
make: *** [.build_release/src/caffe/layers/image_data_layer.o] Error 1

@chenyiman
Copy link
Author

完整错误如下:
src/caffe/layers/image_data_layer.cpp: In member function ‘virtual void caffe::ImageDataLayer::DataLayerSetUp(const std::vectorcaffe::Blob&, const std::vectorcaffe::Blob&)’:
src/caffe/layers/image_data_layer.cpp:74:34: error: ‘solver_rank’ is not a member of ‘caffe::Caffe’
if (this->phase_ == TRAIN && Caffe::solver_rank() > 0 &&
^~~~~~~~~~~
src/caffe/layers/image_data_layer.cpp: In instantiation of ‘void caffe::ImageDataLayer::DataLayerSetUp(const std::vectorcaffe::Blob&, const std::vectorcaffe::Blob&) [with Dtype = float]’:
src/caffe/layers/image_data_layer.cpp:200:1: required from here
src/caffe/layers/image_data_layer.cpp:101:21: error: request for member ‘size’ in ‘((caffe::ImageDataLayer)this)->caffe::ImageDataLayer::.caffe::BasePrefetchingDataLayer::prefetch_’, which is of non-class type ‘caffe::Batch [3]’
for (int i = 0; i < this->prefetch_.size(); ++i) {

src/caffe/layers/image_data_layer.cpp:102:23: error: base operand of ‘->’ has non-pointer type ‘caffe::Batch’
this->prefetch_[i]->data_.Reshape(top_shape);
^~~~
src/caffe/layers/image_data_layer.cpp:113:21: error: request for member ‘size’ in ‘((caffe::ImageDataLayer)this)->caffe::ImageDataLayer::.caffe::BasePrefetchingDataLayer::prefetch_’, which is of non-class type ‘caffe::Batch [3]’
for (int i = 0; i < this->prefetch_.size(); ++i) {
~~~~~~~~~~~~~~~~^~~~
src/caffe/layers/image_data_layer.cpp:114:23: error: base operand of ‘->’ has non-pointer type ‘caffe::Batch’
this->prefetch_[i]->label_.Reshape(label_shape);
^~~~
src/caffe/layers/image_data_layer.cpp: In instantiation of ‘void caffe::ImageDataLayer::DataLayerSetUp(const std::vector<caffe::Blob>&, const std::vector<caffe::Blob>&) [with Dtype = double]’:
src/caffe/layers/image_data_layer.cpp:200:1: required from here
src/caffe/layers/image_data_layer.cpp:101:21: error: request for member ‘size’ in ‘((caffe::ImageDataLayer)this)->caffe::ImageDataLayer::.caffe::BasePrefetchingDataLayer::prefetch_’, which is of non-class type ‘caffe::Batch [3]’
for (int i = 0; i < this->prefetch_.size(); ++i) {
~~~~~~~~~~~~~~~~^~~~
src/caffe/layers/image_data_layer.cpp:102:23: error: base operand of ‘->’ has non-pointer type ‘caffe::Batch’
this->prefetch_[i]->data_.Reshape(top_shape);
^~~~
src/caffe/layers/image_data_layer.cpp:113:21: error: request for member ‘size’ in ‘((caffe::ImageDataLayer)this)->caffe::ImageDataLayer::.caffe::BasePrefetchingDataLayer::prefetch_’, which is of non-class type ‘caffe::Batch [3]’
for (int i = 0; i < this->prefetch_.size(); ++i) {
~~~~~~~~~~~~~~~~^~~~
src/caffe/layers/image_data_layer.cpp:114:23: error: base operand of ‘->’ has non-pointer type ‘caffe::Batch’
this->prefetch_[i]->label_.Reshape(label_shape);
^~~~
make: *** [.build_release/src/caffe/layers/image_data_layer.o] Error 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant