Boost의 빌드에는 bjam이라는 툴을 사용합니다. Boost C++ Libraries: File List 에서 boost-jam을 다운로드 하고, 명령 라인에서 실행하도록, 적당한 장소에 놓아 둡니다. Windows용은 bjam-3.1.9-1-ntx86.zip 등 이라는 이름으로 바이너리로 배포 되고 있습니다. 특히 이유가 없다면 boost를 넣은 디렉토리에 bjam을 넣어 놓는 것으로 문제는 없다고 생각합니다.
커맨즈 프롬프트에서( 윈도우에서는 시작->실행 에서 cmd 라고 입력 하면 된다.)、
cdc:\lib\boost
로 boost의 루트 디렉토리로 이동합니다. (예를 들어、c:\lib\boost에 boost를 넣었다고 가정합니다.) 이하의 설명에서「커맨드 입력」라고 써여 있는 부분에서, 지정 커맨드를 그 프롬프트에 입력 하고, Enter키를 눌러 주세요.
빌드에는Python처리계에 부속하는 헤더 파일등이 필요 합니다. ActivePython 등을 도입하고、적절하게 패스를 통해 놓아주세요. Boost.Pyhton을 사용하지 않는 사람은 하지 않아도 됩니다.
빌드 때에 컴파일러를 커맨드 라인에서 호출 할 필요가 있기 때문에 여기에서 그 설정을 한다. 보통 커맨드 라인에서 개발 되어 있는
쪽은 별로 특별한 설정은 필요 없으므로,
건너 띄어도 상관 없다.
VC++를 default 장소에 인스톨 하고 있다면,
"c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT"
라고 입력해 주세요. 다른 장소인 사람은 vcvars32.bat라는 이름의 파일을 찾아서 그 패스를 입력해 주세요. 다만、STLPort 를 사용한 사람은, 빌드 때에 VCVARS32.BAT를 그대로 사용하면 제대로 되지 않습니다. INCLUDE 패스랑 라이브러리 패스의 최초에 STLPort 디렉토리를 지정 할 필요가 있습니다. VCVARS32.BAT마지막 쪽을、 예를 들며 다음과 같이 바꾸어 주세요.
setINCLUDE=C:\STLport-4.5.3\stlport;%MSVCDir%\ATL\INCLUDE;
%MSVCDir%\INCLUDE;%MSVCDir%\MFC\INCLUDE;%INCLUDE%setLIB=C:\STLport-4.5.3\lib;%MSVCDir%\LIB;
%MSVCDir%\MFC\LIB;%LIB% set STLPORT_PATH=C:\STLport-4.5.3\stlport
VC++를 default 장소에 인스톨 하고 있다면,
"C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin\vcvars32.bat"
라고 입력해주세요. 그 이외의 경우는 위의 VC6++과 같습니다.
컴파일러의 실행 파일(Borland라면、bcc32。gcc라면、g++)에 패스가 통해 있다면 문제 없습니다. 예를 들어 C++BuilderX용으로 빌드 하는 경우에는 인스톨 한 장소에 따라서 적절하게
setPATH="c:\borland\CppBuilderX\bin";%PATH%
와 비슷하게 입력한다면, 패스가 통합니다.
다음과 같이 입력 합니다.
bjam-sTOOLS=vc7--with-python-root=c:\tools\python stage
--with-python-root 부분은、Boost.Python 을 사용하지 않는다면 필요 없습니다. 필요한
경우는, Python을 인스톨 한 루트 디렉토리를 지정합니다.
-sTOOLS에는、
Boost를 사용하도록 하고 싶은 C++ 처리계의 이름을 넣습니다.
msvc
Visual C++ 6
msvc-stlport
Visual C++ 6 에서 STLPort를 이용하고 있는 경우
vc7
Visual C++ 7 (.NET)
vc7-stlport
Visual C++ 7 (.NET) 에서 STLPort를 이용하고 있는 경우
vc7.1
Visual C++ 7.1 (.NET 2003)
vc7.1-stlport
Visual C++ 7.1 (.NET 2003) 에서 STLPort를 이용하고 있는 경우
borland
Borland Free C++ Compiler, C++BuidlerX 등
mingw
MinGW 의 gcc
gcc
그 외 gcc
gcc-stlport
그 외 gcc 에서 STLPort를 이용하고 있는 경우
그
외의TOOLS랑 빌드 옵션에 대한 자세한 것은 Getting Started 를 봐주세요.
잠시만 기다리면 빌드가 끝납니다.
빌드 된 라이브러리가 Boost 인스톨 디렉토리의
stage\lib 라는 장소에 만들어
집니다. 여기에 있는 라이브러리를 자신의 애플리케이션의 빌드 시에 링크하면, 대응하는 라이브러리가
사용 할 수 있도록 됩니다.
이름이 libboost_*** 라고 되어 있는 것은 그것을 링크 하면 단체로 사용 하는 실행 파일이
만들어지는 스택 라이브러리 입니다. 또 릴리즈 용
디버거 용, 멀티쓰레드용, 싱글 쓰레드용, 등 여러가지
버전으로 나누어 집니다. 각 종 규칙에 대한 것은 여기에 에 있습니다.
여기에서 빌드한 Boost 컴포넌트를 사용 할 경우 다음과 같이 설정 합니다.
「도구」→「옵션」→「프로젝트」→「VC++디렉토리」→ 「디렉토리를 표시하는 프로젝트」→「라이브러리 파일」에 c:\lib\boost\stage\lib 를 추가.
실제로 사용 할 때에는 라이브러리를 필요로 하는 헤더를
#include하면 자동으로 적절한 라이브러리가 링크 됩니다.
「도구」→「옵션」→「디렉토리」→ 「표시하는 디렉토리:라이브러리 파일」에 c:\lib\boost\stage\lib 를 추가.
실제로 사용 할 때에는 라이브러리를 필요로 하는 헤더를
#include하면 자동으로 적절한 라이브러리가 링크 됩니다.
。
bcc32.exe 이 있는 폴더 안에ilink32.cfg 라는 파일이 있으므로 그것을 텍스트 에디터로 열어 다음과 같이 수정을 합니다.
-L"C:\development\bcc\lib";"C:\usr\develop\boost\stage\lib"
실제로 사용 할 때에는 라이브러리를 필요로 하는 헤더를
#include하면 자동으로 적절한 라이브러리가 링크 됩니다.
환경변수 LIBRARY_PATH 에 C:\usr\develop\boost\stage\lib 를 설정합니다. 실제로 사용 할 때에는 gcc의 커맨드 라인 에서 필요한 라이브러리를 지정하여 링크 합니다.