Hidehisa Akiyama
hideh****@aist*****
2008年 11月 27日 (木) 16:47:37 JST
秋山@産総研です. Hisayuki Sasaoka wrote: > さて、今回、キャンプ参加に伴いまして、今更で恐縮なのですが、 > ホームページの方を参考にさせていただき、必要となります > Rescueの環境構築を進めておりました。ところが、サーバの > makeで下記のようなエラーに遭遇してしまいました。 > > ちなみにこちらの環境は、 > > Ubuntu 8.10 > g++ (Ubuntu 4.3.2-1ubuntu11) 4.3.2 > java version "1.5.0_16" > > です。 > > 他の皆様はうまくコンパイルできているとのことで、何かこちらの環境が要因 > かとは思われますが、お気づきの点がありましたら、教えていただけますと > 幸いです。 エラーメッセージによると,レスキューシミュレータがgcc-4.3に対応できて いないのが原因のようです.gcc-4.3への対応作業は面倒そうなので,gcc-4.2を インストールしてそちらを使えば良いと思います. # ソースをちょっと覗いてみましたが,かなり本格的に直さないとダメそう こちらのubuntu-8.10の環境では, g++-4.2 をインストールして, rescue-0.50.0/programs/Makefile 内の export CC=gcc export CXX=g++ の部分を, export CC=gcc-4.2 export CXX=g++-4.2 と変更すればコンパイルは通りました(ただし,動作確認はしてません) ubuntu-8.10は8.04に比べて色々と不安定な印象がありますね. サッカー,レスキュー含めて,ロボカップ用の環境としては8.04の方が 良いと思います. > ----コンパイル中のメッセージ-------------------------------- > librescue > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/librescue' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -fPIC -c -o objects.o objects.cc > g++ -g -Wall -pipe -g -Wall -pipe -fPIC -c -o error.o error.cc > g++ -g -Wall -pipe -g -Wall -pipe -fPIC -c -o input.o input.cc > g++ -g -Wall -pipe -g -Wall -pipe -fPIC -c -o output.o output.cc > In file included from output.cc:22: > handy.h:67: error: 'clock_t' in namespace 'std' does not name a type > output.cc: In member function 'Librescue::Cursor > Librescue::OutputBuffer::writeString(const char*)': > output.cc:66: error: 'strlen' was not declared in this scope > make[1]: *** [output.o] エラー 1 > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/librescue' から出ます > blockadessimulator > make[1]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/blockadessimulator' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -DNDEBUG -I../librescue -c -o > blockade.o blockade.cc > In file included from ../librescue/connection_manager.h:20, > from ../librescue/simulator.h:24, > from blockade.h:20, > from blockade.cc:18: > ../librescue/udp.h: In member function 'void > Librescue::LongUDPConnection::Fragment::fill(Librescue::INT_16, > Librescue::INT_16, Librescue::INT_16, Librescue::Byte*, int)': > ../librescue/udp.h:54: error: 'memcpy' was not declared in this scope > blockade.cc: In member function 'virtual int > BlockadeSimulator::step(Librescue::INT_32, const > Librescue::AgentCommandList&, Librescue::ObjectSet&)': > blockade.cc:63: error: 'sort' was not declared in this scope > blockade.cc:74: error: 'atoi' was not declared in this scope > make[1]: *** [blockade.o] エラー 1 > make[1]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/blockadessimulator' から出ます > collapsesimulator > make[1]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/collapsesimulator' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -DNDEBUG -I../librescue -c -o > main.o main.cc > In file included from ../librescue/connection_manager.h:20, > from ../librescue/simulator.h:24, > from collapse.h:12, > from main.cc:7: > ../librescue/udp.h: In member function 'void > Librescue::LongUDPConnection::Fragment::fill(Librescue::INT_16, > Librescue::INT_16, Librescue::INT_16, Librescue::Byte*, int)': > ../librescue/udp.h:54: error: 'memcpy' was not declared in this scope > make[1]: *** [main.o] エラー 1 > make[1]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/collapsesimulator' から出ます > firesimulator > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator' に入ります > /home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/util/Configuration.java:146: > 警告:この文字は、エンコーディング UTF8 にマップできません。 > System.out.println("author: Timo N�ssle\nemail: > nuess****@infor*****\n"); > ^ > /home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/simulator/WindShift.java:4: > 警告:この文字は、エンコーディング UTF8 にマップできません。 > * @author Timo N� > ^ > /home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer/ViewerFrame.java:401: > 警告:この文字は、エンコーディング UTF8 にマップできません。 > compcon=ComponentFactory.createField(0,360,ComponentFactory.FLOAT,1,"direction","�","wind_direction"); > > ^ > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > 警告 3 個 > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/io' に入ります > 注:UDPIO.java の操作は、未チェックまたは安全ではありません。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/io' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel' に入ります > make[3]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer' > に入ります > BuildingConnectionColorizer.java:9: 警告:この文字は、エンコーディング UTF8 にマップできません。 > * @author Timo N� > ^ > 警告 1 個 > make[4]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer/monitor' > に入ります > make[4]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer/monitor' > から出ます > make[4]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer/extinguishManager' > に入ります > make[4]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer/extinguishManager' > から出ます > make[3]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel/viewer' > から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/kernel' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/simulator' > に入ります > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/simulator' > から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/util' に入ります > TempView.java:43: 警告:この文字は、エンコーディング UTF8 にマップできません。 > g.drawString(""+x*5+"�C",115,255-x); > ^ > 警告 1 個 > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/util' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/world' に入ります > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator/world' から出ます > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/firesimulator' から出ます > gis > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/gis' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -DNDEBUG -I../librescue -c -o > main.o main.cc > In file included from ../librescue/connection_manager.h:20, > from main.cc:18: > ../librescue/udp.h: In member function 'void > Librescue::LongUDPConnection::Fragment::fill(Librescue::INT_16, > Librescue::INT_16, Librescue::INT_16, Librescue::Byte*, int)': > ../librescue/udp.h:54: error: 'memcpy' was not declared in this scope > main.cc: In function 'void addNewObject(Librescue::Config&, > Librescue::ObjectPool&, Librescue::RescueObject*)': > main.cc:64: error: 'srand' was not declared in this scope > main.cc:69: error: 'rand' was not declared in this scope > main.cc: In function 'Librescue::INT_32 readInt(FILE*)': > main.cc:85: error: 'exit' was not declared in this scope > main.cc:87: error: 'exit' was not declared in this scope > main.cc:89: error: 'exit' was not declared in this scope > main.cc:91: error: 'exit' was not declared in this scope > main.cc: In function 'void readRoads(Librescue::Config&, > Librescue::ObjectPool&)': > main.cc:196: error: 'strerror' was not declared in this scope > main.cc:197: error: 'exit' was not declared in this scope > main.cc: In function 'void readNodes(Librescue::Config&, > Librescue::ObjectPool&)': > main.cc:232: error: 'strerror' was not declared in this scope > main.cc:233: error: 'exit' was not declared in this scope > main.cc: In function 'void readBuildings(Librescue::Config&, > Librescue::ObjectPool&)': > main.cc:284: error: 'strerror' was not declared in this scope > main.cc:285: error: 'exit' was not declared in this scope > main.cc: In function 'void readGisini(Librescue::Config&, > Librescue::ObjectPool&)': > main.cc:365: error: 'strerror' was not declared in this scope > main.cc:366: error: 'exit' was not declared in this scope > main.cc:425: error: 'exit' was not declared in this scope > main.cc:433: error: 'exit' was not declared in this scope > main.cc: In function 'void replaceBuilding(Librescue::INT_32, > Librescue::Building*, Librescue::ObjectPool&)': > main.cc:445: error: 'exit' was not declared in this scope > make[1]: *** [main.o] エラー 1 > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/gis' から出ます > kernel > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/kernel' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -DNDEBUG -I../librescue -c -o > kernel.o kernel.cc > In file included from ../librescue/connection_manager.h:20, > from kernel.h:22, > from kernel.cc:18: > ../librescue/udp.h: In member function 'void > Librescue::LongUDPConnection::Fragment::fill(Librescue::INT_16, > Librescue::INT_16, Librescue::INT_16, Librescue::Byte*, int)': > ../librescue/udp.h:54: error: 'memcpy' was not declared in this scope > In file included from kernel.cc:20: > ../librescue/handy.h: At global scope: > ../librescue/handy.h:67: error: 'clock_t' in namespace 'std' does not > name a type > kernel.cc: In member function 'void Rescue::Kernel::init(int, char**)': > kernel.cc:41: error: 'strcmp' was not declared in this scope > kernel.cc:92: error: 'strlen' was not declared in this scope > kernel.cc: In member function 'void Rescue::Kernel::run()': > kernel.cc:109: error: 'memset' was not declared in this scope > kernel.cc: In member function 'void > Rescue::Kernel::handleChannelCommand(Librescue::ChannelCommand*, > Librescue::Address&)': > kernel.cc:679: 警告: 符合付きと符合無しの整数式同士の比較です > kernel.cc:690: 警告: 符合付きと符合無しの整数式同士の比較です > kernel.cc: In member function 'bool Rescue::Kernel::canHear(const > Rescue::Kernel::Agent*, const Librescue::VoiceCommand*)': > kernel.cc:984: 警告: unused variable 'hearer' > make[1]: *** [kernel.o] エラー 1 > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/kernel' から出ます > miscsimulator > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/miscsimulator' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -DNDEBUG -I../librescue -c -o > main.o main.cc > In file included from ../librescue/connection_manager.h:20, > from ../librescue/simulator.h:24, > from ../librescue/container.h:22, > from main.cc:17: > ../librescue/udp.h: In member function 'void > Librescue::LongUDPConnection::Fragment::fill(Librescue::INT_16, > Librescue::INT_16, Librescue::INT_16, Librescue::Byte*, int)': > ../librescue/udp.h:54: error: 'memcpy' was not declared in this scope > make[1]: *** [main.o] エラー 1 > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/miscsimulator' から出ます > civilian > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/civilian' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -I../librescue -c -o civilian.o civilian.cc > In file included from ../librescue/connection_manager.h:20, > from ../librescue/simulator.h:24, > from ../librescue/container.h:22, > from civilian.h:22, > from civilian.cc:17: > ../librescue/udp.h: In member function 'void > Librescue::LongUDPConnection::Fragment::fill(Librescue::INT_16, > Librescue::INT_16, Librescue::INT_16, Librescue::Byte*, int)': > ../librescue/udp.h:54: error: 'memcpy' was not declared in this scope > In file included from civilian.cc:18: > ../librescue/handy.h: At global scope: > ../librescue/handy.h:67: error: 'clock_t' in namespace 'std' does not > name a type > make[1]: *** [civilian.o] エラー 1 > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/civilian' から出ます > traffic > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/traffic' に入ります > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[2]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/traffic/object' に入ります > make[2]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/traffic/object' から出ます > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/traffic' から出ます > viewer > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/viewer' に入ります > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[2]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/viewer/object' に入ります > make[2]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/viewer/object' から出ます > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/viewer' から出ます > rescuecore > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore' に入ります > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/objects' に入ります > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/objects' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/commands' に入ります > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/commands' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/tools' に入ります > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[3]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/tools/mapgenerator' > に入ります > 注:ScenarioMaker.java は推奨されない API を使用またはオーバーライドしています。 > 注:詳細については、-Xlint:deprecation オプションを指定して再コンパイルしてください。 > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[3]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/tools/mapgenerator' > から出ます > make[3]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/tools/simulationrunner' > に入ります > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[3]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/tools/simulationrunner' > から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/tools' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/debug' に入ります > 注:Debugger.java の操作は、未チェックまたは安全ではありません。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/debug' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/view' に入ります > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/view' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/sample' に入ります > 注:入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 > 注:詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。 > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/sample' から出ます > make[2]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/log' に入ります > make[2]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/log' から出ます > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/event' に入ります > make[2]: ディレクトリ > `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore/event' から出ます > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/rescuecore' から出ます > ticker > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/ticker' に入ります > g++ -g -Wall -pipe -g -Wall -pipe -c -o main.o main.cc > g++ -o ticker main.o -lX11 > make[1]: ディレクトリ `/home/sasa/rc_res9/rescue-0.50.0/programs/ticker' から出ます > -------------------------------------------------------------------- > _______________________________________________ > Rc-oz-simjp mailing list > Rc-oz****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/rc-oz-simjp -- Hidehisa Akiyama hideh****@aist*****