Ubuntu 14.04에서 Caffe(딥 러닝)를 구축하는 데 도움이 필요합니다. 명령을 실행하면 sudo make all -j4
다음과 같은 보고서가 표시됩니다.
In file included from /usr/local/include/google/protobuf/arena.h:48:0,
from .build_release/src/caffe/proto/caffe.pb.h:23,
from ./include/caffe/util/signal_handler.h:4,
from src/caffe/util/signal_handler.cpp:7:
/usr/include/c++/4.8/typeinfo:39:37: error: expected ‘}’ before end of line
#pragma GCC visibility push(default)
^
/usr/include/c++/4.8/typeinfo:39:37: error: expected unqualified-id before end of line
/usr/include/c++/4.8/typeinfo:39:37: error: expected ‘}’ before end of line
/usr/include/c++/4.8/typeinfo:39:37: error: expected ‘}’ before end of line
/usr/include/c++/4.8/typeinfo:39:37: error: expected ‘}’ before end of line
/usr/include/c++/4.8/typeinfo:39:37: error: expected declaration before end of line
make: *** [.build_release/src/caffe/util/signal_handler.o] Error 1
이 오류는 무엇을 의미합니까? 다음은내가 빌드하는 데 사용한 지침Caffe: 저는 Linux OS를 처음 사용하기 때문에 오류를 해결하기 위한 모든 제안을 기꺼이 받아들일 것입니다 :)
답변1
c++11
또는 에 대한 메시지를 보셨나요 gnu++11
?
비슷한 문제가 여기에 있는 것 같습니다.https://github.com/BVLC/caffe/issues/6359
솔루션은
protobuf를 업데이트하고 MAKEFILE에 다음을 추가합니다.
CXXFLAGs += -std=c++11
MAKEFILE에 이러한 플래그가 필요한지 확실하지 않습니다(위의 방법이 작동하지 않으면 시도해 보세요).
NVCCFLAGS += -std=c++11 CXXFLAGS += -std=c++11 LINKFLAGS += -std=c++11
C++ 98과 호환되는 이전 protobuf(2.x)를 사용하세요.