My Dockerfile은 FROM gcc:5
을 사용하고 apt-get update를 실행하고 wget
을 통해 CMake v3.9를 설치합니다. 내 최상위 CMakeLists.txt
는 set(CMAKE_CXX_STANDARD 11)
을 가지고 있지만 그 C++ (11) 사용하여 컴파일하려면 gcc를 설득하지 않는 것 나는 다음과 같은 오류 얻을 같이docker에서 C++ 11 컴파일
/ifeature.hpp:51:42: error: 'shared_ptr' in namespace 'std' does not name a template type
virtual float compare(const std::shared_ptr<IFeature>& feature) const = 0
^
내가 libstdc++
와 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
의 변화를 추가하는 시도, gnuc++11
등을하지만, 컴파일러는이를 인식하지 못합니다. 나는 또한 쓸데없는 add_compile_options(-std=c++11)
을 시도했다. 나 또한 apt-get upgrade gcc를 시도했지만 그 역시 도움이되지 못했다.
무엇이 여기에 있습니까?
''헤더 파일을 포함 하시겠습니까? –
관련없는 참고 사항에서 참조 *로 공유 포인터 *를 전달하는 이유는 무엇입니까? 일반적인 유스 케이스는 값으로 전달하거나 전체 "공유"된 것이 실제로 작동하지 않는다. –
http://idownvotedbecau.se/beingunresponsive –