• [rcssbase][rcssserver] rcssserverのビルドの不具合修正. (akiyama) 14:56:45

rcssbaseのパッケージングの問題は,どうやら以下の部分が原因.

       am__remove_distdir=: \
       am__skip_length_check=: \

ここで,変数 am__remove_distdir にコロンが代入されて,サブディレクトリでのディレクトリチェックが無効化されてしまうらしい. しかし,解決策が分からない.libltdlディレクトリだけ特別扱いにして,上位のMakefile.amのEXTRA_DISTに中身を全て書いてしまえばいいんだろうか? まだ調査が必要.

rcssbaseをパッケージングできない問題が未解決だが,とりあえず先に進める.

一昨日の作業ではrcssbaseに必要な修正が抜けていたので,それを施しつつrcssserverも修正. コンパイルが通るところまで直して,更に,古くさい実装だったPVectorも作り直した.

実行するとこんなエラーが.

$ ./rcssserver 
rcssserver-11.0.0

Copyright (C) 1995, 1996, 1997, 1998, 1999 Electrotechnical Laboratory.
2000, 2001, 2002, 2003, 2004 RoboCup Soccer Server Maintenance Group.

Using rcssbase-11.0.0

terminate called after throwing an instance of 'boost::filesystem::filesystem_error'
  what():  boost::filesystem::path: invalid name ".rcssserver" in path:  "/home/akiyama/.rcssserver/server.conf"
アボートしました

boost::filesystemなんて使う必要無いと思うんだけどなぁ… 確か,このエラーは以前に直したことがあったはず. 要するに,Windows環境を考慮してディレクトリ名の1文字目が '.' であることが引っかかっているので,それをPosix環境用に修正してスキップするようにすればいいだけなんだけど,どこをいじるのだったか忘れてしまった. もう一度以前に修正したソースを読み直してくる.

(追記) 16:28:30

以前の作業内容をちゃんとメモしてた.
http://www.ntt.dis.titech.ac.jp/~akiyama/robocup/pukiwiki/index.php?2D%2Fhacking%20RCSoccerSim
偉いぞ,自分.
boost::filesystem::path の変数を作るところで,checker関数としてboost::filesystem::portable_posix_name を指定してやれば由,と.

std::string から boost::filesystem::path への暗黙の型変換が行われるせいで,問題を特定するのが難しくなっていると思う.この暗黙変換はやめた方がいいと思うんだけど.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-03-14 (月) 14:51:37 (1254d)
SourceForge.JP
Creative Commons License
RoboCup tools by Hidehisa Akiyama is licensed under a Creative Commons 表示-非営利 2.1 日本 License.