이번에 비트 코인을 공부하면서 알게 된 것들을 적어보려고 한다.
먼저 G++과 GCC에 대해서 설명하겠다.
GCC(GNU Compiler Collections)는 주로 c, c++ 언어를 컴파일하는데 사용된다.
Objective C 및 Objective C++에도 사용된다고 하는데 이건 공부를 안해봐서 잘 모르겠다.
C++언어로 작된 .cpp 파일을 GCC로 컴파일시 GCC가 .cpp파일을 컴파일한 후 C 라이브러리로 링크하기 때문에 링크에러가 발생할 수도 있다고 한다.
G++은 실행 파일을 생성하기 위해 소스 코드의 전처리, 컴파일, 어셈블리 및 링크에 사용되는 GNU C++ 컴파일러 호출 명령이다.
사용방법
g++ <실행할파일이름> -o <출력될이름>
출력될 이름을 지정하지 않고 해도 상관은 없다. 예를 들어 g++ <실행파일이름> 이런식으로 해도 오류가 나지 않는다.
다음은 예시를 들어서 설명하겠다.
g++ ex1.cpp -o ex1 -I /home/src/library/bitcoin/include/ -L ~/src/library/bitcoin/lib/ -lbitcoin-system -std=c++11 -L /lib/x86_64-linux-gnu/ -lpthread
앞에서부터 차례대로 설명하겠다.
1. g++ : G++ 컴파일러를 사용하여 C++ 소스 파일을 컴파일한다.
2. ex1.cpp : 컴파일 할 C++ 소스 파일 이름이다.
3. -o ex1 : -o 옵션 뒤에 오는 ex1은 컴파일된 바이너리 파일의 출력 이름을 지정한다.
4. -I : -I 옵션은 컴파일러에게 헤더 파일을 찾을 수 있는 특정 디렉토리를 지정한다.
5. -L : -L 옵션은 컴파일러에게 라이브러리 파일을 찾을 수 있는 특정 디렉토리를 지정한다.
6. -l(소문자L) : -l 옵션은 컴파일 과정에서 필요한 라이브러리를 지정한다.
7. -std : -std 옵션은 컴파일러에게 사용할 C++ 표준을 알려준다. 위 코드에선 C++표준을 사용하도록 지정했다.
8. 2번째 -L : 또 다른 라이브러리 파일을 찾을 수 있는 디렉토리를 지정한다. (이런식으로 여러가지의 라이브러리 파일을 지정할 수 있다)
9. -lpthread : -l 옵션을 사용하여 POSIX 스레드 라이브러리 pthread를 사용하도록 지정했다.
이렇게 리눅스에서 g++을 사용하여 실행하는 방법을 알아보았다.
'기타' 카테고리의 다른 글
[TIP] Github 코드 간단하게 VS Code로 보는 법 (0) | 2023.08.10 |
---|---|
[개인공부] ZeroMQ (0) | 2023.08.08 |
[리눅스] find 명령어와 sed로 상대경로 절대경로로 바꿔보기 (0) | 2023.08.02 |
[리눅스] 명령어1(ls 명령어) - 우툰투 정리 (0) | 2023.07.28 |
리눅스 터미널 명령어 정리 (2) | 2023.01.17 |