Docker用patch
memo
cd /opt/fawkes-robotino && \ for p in /opt/patches.fawkes/fawkes-core-*.patch; do echo PATCH \$p; patch -d fawkes -p1 -N <\$p; done && \
/opt/patches.fawkes/fawkes-core-*.patch は,以下の通り.
- fawkes-core-ffset_pose-add-missing-argument-declaration.patch
- fawkes-core-gazsim-comm-resolve-fault-tolerance.patch
- fawkes-core-laser-filter-mute-map-filter.patch
- fawkes-core-logging-line-buffering.patch
- fawkes-core-navgraph-save.patch
- fawkes-core-ros-xmlrpcpp-breakage.patch
これらは,ICAPS2017のFawkes1.0.1を使ってたら,すでに適用済みですので,不要です.
たぶん,以下も適用済かなぁ.
# Perform the following substitutions in config files: # * general gazebo config # - Fawkes Robotino path # - refbox host (use cluster DNS name) # - peer addresses (use cluster DNS names) # - peer send and receive ports (anticipate maximum possible set of peers) # * per-robot host configurations # - Set appropriate peer address and ports (see above) # - replace magenta team name, robot name and number (CLIPS-agent only) # (the same team will not play against itself, hence set Carologistics to # use the same team name, and robot name and number, with both colors) RUN /bin/bash -c "sed -i /opt/fawkes-robotino/cfg/conf.d/gazsim.yaml \ -e 's/~\/fawkes-robotino/\/opt\/fawkes-robotino/g' \ -e 's/refbox-host: .*$/refbox-host: refbox/' \ -e 's/addresses: .*$/addresses: [\"refbox\", \"robot-c1\", \"robot-c2\", \"robot-c3\", \"robot-m1\", \"robot-m2\", \"robot-m3\", \"agent-c1\", \"agent-c2\", \"agent-c3\", \"agent-m1\", \"agent-m2\", \"agent-m3\"]/' \ -e \"s/send-ports: .*$/send-ports: [4445, $(seq -s ', ' 4411 4422)]/\" \ -e \"s/recv-ports: .*$/recv-ports: [4444, $(seq -s ', ' 4451 4462)]/\" \ -e \"s/send-ports-crypto1: .*$/send-ports-crypto1: [4446, $(seq -s ', ' 4471 4482)]/\" \ -e \"s/recv-ports-crypto1: .*$/recv-ports-crypto1: [4441, $(seq -s ', ' 4491 4502)]/\" \ -e \"s/send-ports-crypto2: .*$/send-ports-crypto2: [4447, $(seq -s ', ' 4511 4522)]/\" \ -e \"s/recv-ports-crypto2: .*$/recv-ports-crypto2: [4442, $(seq -s ', ' 4531 4542)]/\" &&\ for i in \$(seq 1 6); do \ sed -i /opt/fawkes-robotino/cfg/gazsim-configurations/default/host_robotino_\$i.yaml \ -e \"s/peer-address: .*\$/peer-address: refbox/\" \ -e \"s/peer-recv-port: .*\$/peer-recv-port: \$(expr 4410 + \$i)/\" \ -e \"s/peer-send-port: .*\$/peer-send-port: \$(expr 4450 + \$i)/\" \ -e \"s/cyan-recv-port: .*\$/cyan-recv-port: \$(expr 4470 + \$i)/\" \ -e \"s/cyan-send-port: .*\$/cyan-send-port: \$(expr 4490 + \$i)/\" \ -e \"s/magenta-recv-port: .*\$/magenta-recv-port: \$(expr 4510 + \$i)/\" \ -e \"s/magenta-send-port: .*\$/magenta-send-port: \$(expr 4530 + \$i)/\" \ -e \"s/team-name: Carologistics-2/team-name: Carologistics/g\" \ -e \"s/robot-name: R-4/robot-name: R-1/g\" \ -e \"s/robot-name: R-5/robot-name: R-2/g\" \ -e \"s/robot-name: R-6/robot-name: R-3/g\" \ -e \"s/robot-number: 4/robot-number: 1/g\" \ -e \"s/robot-number: 5/robot-number: 2/g\" \ -e \"s/robot-number: 6/robot-number: 3/g\"; \ done \ "
かわりに,xmlrpc.h の部分の修正が必要です.
ln -s /usr/include/xmlrpc.h /usr/include/XmlRpc.h
コメントを残す