본문 바로가기
다양한 TIP

C++ 컴파일 옵션 설명 -l -L -I

by 유기농프로그래밍 2023. 6. 14.
반응형

C++ 컴파일 옵션

 

컴파일 시에 -l, -L, -I와 같은 옵션은 라이브러리 파일 및 헤더 파일의 경로와 관련된 설정을 지정하는 데 사용됩니다. 아래에서 각각의 옵션에 대해 자세히 알려드리겠습니다:


-l 옵션(알파벳 소문자 엘)

-l 옵션은 라이브러리 파일을 지정하는 데 사용됩니다. 일반적으로 라이브러리 파일의 이름을 지정합니다. 예를 들어, -lgraphqlparser는 libgraphqlparser.so 또는 libgraphqlparser.a와 같은 라이브러리 파일을 링크하라는 의미입니다. 일반적으로 -l 옵션은 lib 접두사와 파일 확장자를 제외한 라이브러리 파일의 이름만 지정합니다.


-L 옵션(알파벳 대문자 엘)


-L 옵션은 라이브러리 파일이 위치한 디렉터리를 지정하는 데 사용됩니다. 컴파일러가 라이브러리 파일을 찾을 수 있도록 해줍니다. 일반적으로 -L 옵션 다음에는 라이브러리 파일이 위치한 디렉터리의 경로를 지정합니다.


-I 옵션(알파벳 대문자 아이)


-I 옵션은 헤더 파일이 위치한 디렉터리를 지정하는 데 사용됩니다. 컴파일러가 헤더 파일을 찾을 수 있도록 해줍니다. 일반적으로 -I 옵션 다음에는 헤더 파일이 위치한 디렉터리의 경로를 지정합니다.

 


예를 들어, 다음은 libgraphqlparser를 빌드한 후 생성된 .so 파일을 컴파일하는 명령어 예제입니다:

g++ -std=c++11 -o sample sample.cpp -L/path/to/libgraphqlparser/lib -lgraphqlparser


-L/path/to/libgraphqlparser/lib: /path/to/libgraphqlparser/lib 경로에 위치한 라이브러리 파일을 찾도록 지정합니다.
-lgraphqlparser: libgraphqlparser라는 이름의 라이브러리 파일을 링크합니다.


만약 헤더 파일의 경로를 추가로 지정해야 하는 경우, -I 옵션을 사용할 수 있습니다. 

 

예를 들어, 다음은 헤더 파일이 위치한 디렉터리의 경로를 추가로 지정하는 명령어 예제입니다:

g++ -std=c++11 -o sample sample.cpp -I/path/to/libgraphqlparser/include -L/path/to/libgraphqlparser/lib -lgraphqlparser


-I/path/to/libgraphqlparser/include: /path/to/libgraphqlparser/include 경로에 위치한 헤더 파일을 찾도록 지정합니다.


-L/path/to/libgraphqlparser/lib: `/path/to/libgraphqlparser/lib

반응형

댓글