반응형
GCC 포함 경로가 무엇인지 확인
이 질문에 이미 답변이 있습니다.
나는 #include
Linux에서 프로그래밍 방식으로 경로를 찾으려고 하는데, 내가 이해하는 것처럼 실제로는 GCC가 생각하는 것을 찾는 것을 의미합니다. (정말 사실인가요? Clang은 어떻게하나요?)
http://gcc.gnu.org/onlinedocs/cpp/Search-Path.html 에 따르면 일부 구성 요소는 CPU 아키텍처와 GCC 버전을 포함합니다. 특히 후자는 까다로워 보입니다. gcc --version
출력 을 실행 하고 파싱하여 얻을 수 있다고 생각 gcc -v
하지만 (또는 ) 이것은 기껏해야 우아하지 않고 최악의 경우 취약 해 보입니다. 자신의 프로그램이 GCC로 컴파일되고 있다고 가정하고 코드 내에서 수행하는 것은 또 다른 옵션 일 수 있지만 그 가정에 따라 필요합니다.
권장하는 방법은 무엇입니까?
명령
echo | gcc -E -Wp,-v -
사용중인 포함 경로가 표시됩니다.
포함 경로를 찾는 데 권장되는 방법이 무엇인지 잘 모르겠습니다 . 표준 방법은 같은 (C와 C ++에 대한) 아래에 주어진다 :
$ `gcc -print-prog-name=cc1` -v
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
/usr/include
End of search list.
^C
$ `gcc -print-prog-name=cc1plus` -v
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/4.7
/usr/include/c++/4.7/x86_64-linux-gnu
/usr/include/c++/4.7/backward
/usr/lib/gcc/x86_64-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
/usr/include
End of search list.
^C
참고 URL : https://stackoverflow.com/questions/17939930/finding-out-what-the-gcc-include-path-is
반응형
'Programing' 카테고리의 다른 글
Chrome은 Fiddler 루트 인증서를 신뢰하지 않습니다. (0) | 2020.11.20 |
---|---|
Bash에서 다른 사용자로 명령 그룹을 실행하는 방법은 무엇입니까? (0) | 2020.11.20 |
iTextSharp를 사용하여 HTML을 PDF로 변환하는 방법 (0) | 2020.11.20 |
Docker가 Dockerfile을 빌드 할 때 RUN npm 설치 지침을 캐시하는 방법 (0) | 2020.11.20 |
MongoDB 기본 사용자 및 비밀번호는 무엇입니까? (0) | 2020.11.20 |