先日、Ubuntu上でのTOPPERS/ASPのビルドについて書きました。
ところが今日、同じ手順でもUbuntu 10.04だと失敗することに気づきました。9.04の場合、以下のコマンドでコンフィギュレータのビルドができます(TOPPERS/ASPカーネル、ターゲット非依存部1.3.2)。
$ cd asp/cfg $ sudo apt-get install libboost-dev $ export set BOOST_DIR=/usr/include/boost $ export set LIBBOOST_SUFFXI=-mt $ make depend $ make
ところが、同じコマンドを実行しても、Ubuntu 10.04上では異常終了します。9.04は、g++が4.3.3、10.04は、g++が4.4.3。この辺に問題があるのかも。
追記:
なーんか、g++のバージョンでコンフィギュレータがビルドできない問題って、前もあったぞ、と当たりをつけながら検索した結果、やはり問題になっていました。cstdioをインクルードすればエラーが静まるそうです。
asp/cfg/toppers/builtin_function.cppに次の一文を追加して無事コンパイルが通りました。
#include
// fix error by g++ 4.4
なお、boostの構成も変わっているらしく、apt-getに必要なパッケージが増えています。
$ cd asp/cfg $ sudo apt-get install libboost-dev libboost-program-options-dev libboost-filesystem-dev $ export set BOOST_DIR=/usr/include/boost $ export set LIBBOOST_SUFFXI=-mt $ make depend $ make
さらに追記:
以下の問題がもろにぶつかっているため、ビルドするにはprc.tfの変更が必要になります。
http://www.toppers.jp/TOPPERS-USERS/201004/msg00034.html
130行目を次のように変更します。
$bitpat_cfgint = 1-1$