Linux에서 GCC의 기본 포함 경로를 추가하는 방법은 무엇입니까?


288

gcc $HOME/include에서 일반적인 include 디렉토리 외에도 파일을 포함시키고 싶지만에 대한 아날로그는 없습니다 $LD_LIBRARY_PATH.

컴파일 할 때 (또는 makefile에서) 명령 줄에 include 디렉토리를 추가 할 수 있다는 것을 알고 있지만 라이브러리 케이스와 마찬가지로 여기에서 보편적 인 접근 방식을 원합니다.


3
다음은 C_INCLUDE_PATH 및 CPLUS_INCLUDE_PATH 환경 변수가 문서화 된 GCC 4.8.1 매뉴얼에 대한 링크 입니다.
mloskot

답변:


392

C_INCLUDE_PATH(C 헤더 파일의 경우) 또는 CPLUS_INCLUDE_PATH(C ++ 헤더 파일의 경우) 설정을 시도하십시오 .

Ciro가 언급했듯이 CPATHC와 C ++ (및 다른 언어)의 경로를 설정합니다.

자세한 내용은 GCC 설명서를 참조하십시오 .


53

선호하는 포함으로 gcc의 별명을 작성하십시오.

alias mygcc='gcc -I /whatever/'

12
나는 공간이 없어야한다고 생각한다-I
Iulius Curt

10
-l<libnam>링크를 입력 하는 것처럼 공간을 생략하는 습관을 들이는 것 별명을 만드는 것은 매우 좋지 않은 해결책이라는 점에 유의하십시오. 실제로 '즐겨 찾기 포함'목록을 작성하고 makefile에 추가 할 수 있습니다.
h4unt3r

9
"라이브러리를 별도의 인수로 사용하는 두 번째 대안은 POSIX 준수만을위한 것이며 권장되지 않습니다." GCC 매뉴얼에 따라.
Jori

좋은 생각이 아닙니다. 이것은 구성 할 수 없으며 (다른 디렉토리를 원한다면? 다른 GCC 스위치를 원한다면 어떻게해야합니까) gcc에 대해 가정하는 다양한 스크립트 또는 자동화 된 도구를 혼동 할 수 있습니다.
einpoklum


6

참고 사항 : CPLUS_INCLUDE_PATHC_INCLUDE_PATH같지 않습니다 LD_LIBRARY_PATH. LD_LIBRARY_PATH제공 ld라이브러리의 위치가 함께 C / C ++ 컴파일러를 제공하는 이전의 두개의 동등한 반면 (런타임에 동적 링커) LIBRARY_PATH.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.