2016-07-27 4 views
0

clang 3.4를 설치하고 libC++로 전환 한 후 CircleCI에서 다음 오류가 발생합니다. . . CMake INCLUDE_DIRECTORIES(SYSTEM path_above)를 사용하거나 isystem 컴파일러 플래그를 설정에도 clang 3.4 및 libC++로 전환 할 때 표준 헤더가 없습니다.

gtest/googletest/include/gtest/gtest.h:54:10: fatal error: 
     'limits' file not found 
#include <limits> 

기분을 상하게하는 헤더 파일이 /usr/lib/llvm-3.4/lib/clang/3.4/include/에 있습니다,하지만 난이 오류를 방지 할 수

.

어떤 아이디어가 잘못 되었나요?

답변

0

문제가 한 번 발생했습니다. 소스에서 clang을 빌드하고 바이너리의 인스턴스가 여러 개 있기 때문에 이런 일이 일어났습니다. 메모리가 작동하는 경우 파일에 C_INCLUDE_PATHCPLUS_INCLUDE_PATH 플래그를 설정하여 해결했습니다.

export C_INCLUDE_PATH=/usr/lib/llvm-3.4/lib/clang/3.4/include/ 
export CPLUS_INCLUDE_PATH=/usr/lib/llvm-3.4/lib/clang/3.4/include/ 

가이 작업을 완료 한 후에는 새로운 터미널을 열 수 있습니다하거나 업데이트 읽도록 (source ~/.bashrc을 실행

이처럼 ~/.bashrc 파일에 다음 행을 추가하여 그렇게 할 수 있습니다 ~/.bashrc 파일)