検索でわざわざBoostのビルドを探して飛んでくれたひとがいたのに
みたら、クロスコンパイルしか書いてないとか、ワンステップ飛ばしてるだろ
ってことで、Boostのビルドについて少し書こうと思います。
方法は、そんなに難しくなくて、ステップは3つほど
- Boostのダウンロードと展開
- bjamを作る(bootsrap.sh)
- bjamでboostをインストール
です。
というか、普通のboostでいいなら、Linuxの場合は
apt-get boost
です。
なんで、boostをビルドしなきゃいけないかというと
組込みなどのクロスコンパイルが必要な環境のモジュールを作成する場合
ターゲット上で動作する環境と、ホスト側のエミュレート環境を
できるだけ近づける必要があります。
具体的には、「ホストで使えたのに、ターゲットで動かねぇよ」
って。これが一番困るのです。
実際の話でいくと、そこまで問題は起こらないとは思いますが
減らせるリスクはできるだけ減らしましょうってことで。
ダウンロード
ダウンロードは、boost.org から持ってきます。
クロスコンパイル時は、1.43.0だったので、今回もこれを。
ダウンロードしたら、展開してください
tar zxvf boost_1_43_0.tar.gz
とかでいいと思います。
bjamを作る
展開できたフォルダに移動して、bootstrap.sh を実行します。
作業場所では、いつも話題に上がりますが、
2度目ですが、boostrap ではなく bootstrapですw
cd boost_1_43_0
./bootstrap.sh
といった感じ。
bjamでboostをインストール
bjamの実行最後に、bjamを実行して、モジュールを作ります
sudo ./bjam --without-python --without-mpi threading=multi install
解説ですが、
--without-python は、ターゲットにもpythonいれなかったので。
クロスコンパイルでの開発以外にも、色々作る予定であれば
Pythonも入れていいかと思います。
コンパイルでずっこける場合は、python-dev だっけか(うろおぼえ)が必要だと思います。
apt-get install python-dev
とか、こんな感じで。やり直しても上手くいかないなら --clean(クリーン) -a(リビルド) とか
--without-mpi は指定しなくても勝手に外れますが、メッセージが気になるので。
threading=multi でマルチスレッド対応に。
作成するモジュールなどの細かい設定は、クロスコンパイルの記事を
見てもらうと良いと思います。
0 件のコメント:
コメントを投稿