いちばんやさしいゲームの作り方

文系の人でも、数理学がわからない人でもゲームプログラミングをマスターできるブログ

Boost をコンパイルしたときの bjam オプションをメモしておきます。

ソースコードやバイナリを配置した場所は次のようになります。

Boost のソースコード C:\local\Boost\boost_1_39_0
lib をはき出す場所 C:\local\Boost\boost-build
bjam のバイナリ C:\local\Boost\boost-jam-3.1.17-1-ntx86\bjam.exe
bzip2 のソースコード C:\local\bzip2\bzip2-1.0.5
zlib のソースコード C:\local\zlib\zlib123

コマンドは次のようになります。

cd C:\local\Boost\boost_1_39_0

C:\local\Boost\boost-jam-3.1.17-1-ntx86\bjam.exe ^
  -sBZIP2_SOURCE=C:\local\bzip2\bzip2-1.0.5 ^
  -sZLIB_SOURCE=C:\local\zlib\zlib123 ^
  --stagedir=C:\local\Boost\boost-build ^
  --build-type=complete ^
  toolset=msvc-9.0 ^
  link=static ^
  runtime-link=static ^
  threading=multi ^
  variant=release,debug ^
  stage

圧縮データを読み書きしたいので zlib と bzip2 を取り込んでコンパイルしました。また、最終的にスタティックライブラリが欲しかったので link=static 、 Visual C++ のランタイムを必要としないで動作させたかったので runtime-link=static を指定しました。コンパイラの種類はバージョン含めて toolset=msvc-9.0 のように指定した方が良いそうです。マルチスレッドの指定は必要だっただろうか…

これでシリアライズのサンプルを動かしてみましたが、できあがったバイナリはランタイムに依存しておりませんでした。よかったよかった。

Comments

yomogi
2009/05/20 10:22:19

bjam –toolset=msvc-9.0 link=static runtime-link=static release debug stage
こんな感じで、すべてビルドしようと思ったのですが
何故か通りません
bjam –toolset=msvc-9.0express link=static runtime-link=static release debug stage
このようにしたら、実行されました
expressを付けただけです。
しかし、今度は
実行中に流れてくる文章の中で
「\Utilities\Bin\x86″;”C:\Program の使い方が誤っています。」
という文が混じっているようで、何やらマズイ雰囲気…
stageフォルダを見てもlibは一切生成されていないため…
失敗のようです
もしかしたら環境設定が間違っているのかもしれません。
Visual Studio 2008 コマンドプロンプトを起動すると
c:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat
が呼ばれますが
「Setting environment for using Microsoft Visual Studio 2008 x86 tools.」
「\Utilities\Bin\x86″;”C:\Program の使い方が誤っています。」
と、最初にこの二行が出力されます
何か変なところをいじってしまったのでしょうか…
clを呼び出しても
「’cl’ は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
と出力されるので…
何が問題なのか…もう、全てが問題のような気がしてきます(汗

Byerkut
2009/05/20 21:45:44

> yomogi さん

なんとも奇っ怪な状態ですね…
もしよろしければ、コマンドプロンプトで…
> set
…と入力して、環境変数を全部見せていただけますか?
変なところにスペースが入っているのかもしれません。

yomogi
2009/05/21 15:51:28

む…環境変数をメールで送ろうかと思いましたが
ふと、
VC2008で「\Utilities\Bin\x86″;”C:\Program の使い方が誤っています。」が出るのであれば、
VC2005ならどうなのだろう、と思い
Visual Studio 2005 コマンドプロンプトを立ち上げたところ、発生しませんでした
そこで、
toolset=msvc-8.0express
で実行したところ正常に出力されているようです(現在進行形)
おそらく,VC2008のvsvars32.batに問題があると思うので、少し調べてみます

Byerkut
2009/05/21 16:15:46

> yomogi さん

無事にコンパイルが開始できたようで、よかったです(^^
違うバージョンを同じマシンにインストールするのがマズいのか、
それともご指摘のように Visual C++ 2008 の問題なのか…
でも、確かに Visual C++ 2008 のインストールは問題が多くて大変でした。
目に見えないインストールの失敗は考えられるかもしれませんね。

Contributions




Trackback URL

メルマガ登録・解除
 
挫折不可能!初級ゲームプログラミング完全マニュアル
RSS track feedいちばんやさしいゲームの作り方 カウンター
ブログSEO対策:track word あわせて読みたい SEO STATUS