검색 경로 - GCC 예비 프로세서 검색 경로
https://gcc.gnu.org/onlinedocs/cpp/Search-Path.html
By default, the preprocessor looks for header files included by the quote form of the directive
#include "file"
first relative to the directory of the current file, and then in a preconfigured list of standard system directories. For example, if /usr/include/sys/stat.h
contains #include "types.h"
, GCC looks for types.h
first in /usr/include/sys
,then in its usual search path. 기본 적 인 상황 에서 예비 프로세서 가 명령 #include "file"
의 참조 형식 에 포 함 된 헤더 파일 을 찾 습 니 다. 먼저 현재 파일 의 디 렉 터 리 에 비해 미리 설 정 된 표준 시스템 디 렉 터 리 목록 을 찾 습 니 다.예 를 들 어 /usr/include/sys/stat.h
에 #include "types.h"
이 포함 된다 면 GCC 는 먼저 /usr/include/sys
에서 types.h
을 찾 은 다음 관례 에 따라 검색 경 로 를 찾는다.For the angle-bracket form
#include
, the preprocessor’s default behavior is to look only in the standard system directories. The exact search directory list depends on the target system, how GCC is configured,and where it is installed. You can find the default search directory list for your version of CPP by invoking it with the -v
option.정확 한 검색 디 렉 터 리 목록 은 대상 시스템, GCC 설정 방식, 설치 위치 에 달 려 있 습 니 다.#include
옵션 을 사용 하여 CPP 버 전의 기본 검색 디 렉 터 리 목록 을 호출 할 수 있 습 니 다.예컨대cpp -v /dev/null -o /dev/null
There are a number of command-line options you can use to add additional directories to the search path. The most commonly-used option is
-v
, which causes -Idir
to be searched after the current directory (for the quote form of the directive)and ahead of the standard system directories. You can specify multiple dir
options on the command line, in which case the directories are searched in left - to - right order. 많은 명령 행 옵션 을 사용 하여 다른 디 렉 터 리 를 검색 경로 에 추가 할 수 있 습 니 다.가장 많이 사용 되 는 옵션 은 -I
으로 현재 디 렉 터 리 (명령 에 대한 참조 형식) 이후 표준 시스템 디 렉 터 리 를 검색 하기 전에 -Idir
을 검색 합 니 다.명령 행 에 dir
옵션 을 여러 개 지정 할 수 있 습 니 다. 이 경우 왼쪽 에서 오른쪽으로 디 렉 터 리 를 검색 합 니 다.quote [kwəʊt]:vt. , , , , ... , ( ) vi. , n. , , ,( ) , ,( )
directive [daɪ'rektɪv; dɪ'rektɪv]:n. , adj. ,
If you need separate control over the search paths for the quote and angle-bracket forms of the
-I
directive, you can use the #include
and/or -iquote
options instead of -isystem
. See Invocation, for a detailed description of these options,as well as others that are less generally useful. -I
명령 의 따옴표 와 괄호 형식의 검색 경 로 를 단독으로 제어 하려 면 #include
과 / 또는 -iquote
옵션 을 사용 할 수 있 습 니 다.이 옵션 에 대한 상세 한 설명 과 자주 사용 되 지 않 는 옵션 은 호출 을 참조 하 십시오.\ # include "..." search starts here: 현재 파일 의 디 렉 터 리 를 먼저 검색 한 다음 미리 설 정 된 표준 시스템 디 렉 터 리 목록 을 찾 습 니 다. \ #include search starts here: 예비 프로세서 의 기본 동작 은 표준 시스템 디 렉 터 리 만 보 는 것 입 니 다.
-isystem
, that effect where the preprocessor search for header files, the directory list printed by the -I
option reflects the actual search path used by the preprocessor. 명령 줄 에 다른 옵션 을 지정 하면 (예: -I
)예비 프로세서 검색 헤더 파일 의 위치 에 영향 을 줄 수 있 으 며, -v
옵션 으로 인쇄 된 디 렉 터 리 목록 은 예비 프로세서 가 사용 하 는 실제 검색 경 로 를 반영 합 니 다.또한 전처리 기 가
-I
옵션 을 사용 하여 기본 시스템 헤더 디 렉 터 리 를 검색 하 는 것 을 방지 할 수 있 습 니 다. 이 는 운영 체제 커 널 이나 표준 C 라 이브 러 리 기능 을 사용 하지 않 는 다른 프로그램 이나 표준 C 라 이브 러 리 자 체 를 컴 파일 할 때 유용 합 니 다.예비 프로세서 가 -v
옵션 을 사용 하여 기본 시스템 헤더 디 렉 터 리 를 검색 하 는 것 을 막 을 수 있 습 니 다.운영 체제 커 널 이나 표준 C 라 이브 러 리 도구 나 표준 C 라 이브 러 리 자체 의 프로그램 을 컴 파일 하지 않 을 때 유용 합 니 다.1. cpp -v /dev/null -o /dev/null
strong@foreverstrong:~$ cat /etc/hostname
foreverstrong
strong@foreverstrong:~$
strong@foreverstrong:~$ echo LD_LIBRARY_PATH
LD_LIBRARY_PATH
strong@foreverstrong:~$
strong@foreverstrong:~$ echo $LD_LIBRARY_PATH
/usr/local/cuda-8.0/lib64:
strong@foreverstrong:~$
strong@foreverstrong:~$ cpp -v /dev/null -o /dev/null
Using built-in specs.
COLLECT_GCC=cpp
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.9' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
COLLECT_GCC_OPTIONS='-E' '-v' '-o' '/dev/null' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-linux-gnu/5/cc1 -E -quiet -v -imultiarch x86_64-linux-gnu /dev/null -o /dev/null -mtune=generic -march=x86-64 -fstack-protector-strong -Wformat -Wformat-security
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/5/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/5/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/5/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/5/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-E' '-v' '-o' '/dev/null' '-mtune=generic' '-march=x86-64'
strong@foreverstrong:~$
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[Elasticsearch] 제어 상관도 (5) - function_score 조회 및 field_value_factor,boost_mode,max_mode 매개 변수function_score 조회는 점수 계산 과정을 처리하는 궁극적인 도구입니다.메인 검색에 일치하는 모든 문서에 함수를 호출하여 원래의 _를 완전히 바꿀 수 있습니다score. 각 문서에 대한 간단한 승급이 적용되...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.