더북(TheBook)

또한, (최신 버전에서) 빌드 바이너리에 대한 기본 규칙을 제공하는 빌드 도구인 make(7.2.2.1절의 개요를 참조)를 사용할 수도 있다. make는 다음과 같이 호출할 수 있다.

make hello42

make를 호출하면 현재 디렉터리에서 비슷한 이름을 갖는 프로그램 소스를 찾는다. hello42.cpp를 찾고나면 .cpp가 C++ 소스를 위한 표준 파일 접미사이기 때문에 시스템의 기본 C++ 컴파일러를 호출하게 된다. 프로그램이 컴파일되고 나면 다음 명령을 통해 호출할 수 있다.

./hello42

우리가 생성한 바이너리는 다른 소프트웨어가 필요하지 않으며, 호환 가능한 다른 리눅스 시스템*에 복사한 뒤 실행할 수 있다.

윈도(Windows): 만약 MinGW를 사용한다면 리눅스와 같은 방식으로 컴파일할 수 있다. 만약 비주얼 스튜디오(Visual Studio)를 사용한다면 먼저 프로젝트를 생성해야 한다. 프로젝트를 만드는 가장 쉬운 방법은 콘솔 애플리케이션에 대한 프로젝트 템플릿을 사용하는 방법으로 자세한 설명은 http://www.cplusplus.com/doc/tutorial/introduction/visualstudio를 참고한다. 프로그램을 실행할 때, 콘솔이 닫히기 전에 출력 결과를 볼 수 있는 시간은 수 밀리 초밖에 없다. 볼 수 있는 시간을 1초로 연장하고 싶다면 포팅(Porting)*이 되지 않는 명령어인 Sleep(1000);을 삽입하고 <windows.h>를 포함하면 된다. C++11 이후 표준을 지원한다면 기다리는 부분을 포팅이 되는 명령어로 바꿀 수 있다.

std::this_thread::sleep_for(std::chrono::seconds(1));

 

* 표준 라이브러리는 종종 동적으로 링크되며(7.2.1.4절 참조), 다른 시스템에서 같은 버전의 표준 라이브러리가 있어야 한다(호환성 요구 사항의 일부).

 

* 역주

실행 가능한 프로그램이 원래 설계된 바와 다른 컴퓨팅 환경(이를테면 CPU, 운영체제, 서드 파티 라이브러리 등)에서 동작할 수 있도록 하는 과정

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.