acxz / gazebo-arch

A collection of Arch Linux PKGBUILDS for the Gazebo Simulator
18 stars 11 forks source link

Error when building ignition-gazebo #103

Open e8035669 opened 3 hours ago

e8035669 commented 3 hours ago

I meet some error when building ignition-gazebo, build log is below.

[  2%] Building CXX object src/CMakeFiles/gz-sim8.dir/Barrier.cc.o
[  2%] Building CXX object src/CMakeFiles/gz-sim8.dir/BaseView.cc.o
[  2%] Built target doc
[  2%] Building CXX object src/CMakeFiles/gz-sim8.dir/Conversions.cc.o
[  2%] Building CXX object python/CMakeFiles/common5.dir/src/gz/common/_gz_common_pybind11.cc.o
[  2%] Building CXX object python/CMakeFiles/common5.dir/src/gz/common/Console.cc.o
[  2%] Linking CXX shared module ../lib/common5.cpython-312-x86_64-linux-gnu.so
[  3%] Building CXX object src/CMakeFiles/gz-sim8.dir/ComponentFactory.cc.o
在從下述位置 include 的檔案: /home/jeff/.cache/paru/clone/ignition-gazebo/src/gz-sim-gz-sim8_8.0.0/src/ComponentFactory.cc:18:
/home/jeff/.cache/paru/clone/ignition-gazebo/src/gz-sim-gz-sim8_8.0.0/include/gz/sim/components/Factory.hh: In member function 「void gz::sim::v8::components::ComponentDescriptorQueue::Remove(gz::sim::v8::components::RegistrationObjectId)」:
/home/jeff/.cache/paru/clone/ignition-gazebo/src/gz-sim-gz-sim8_8.0.0/include/gz/sim/components/Factory.hh:153:26: 錯誤:「find_if」 is not a member of 「std」; did you mean 「find」?
  153 |       auto compIt = std::find_if(this->queue.rbegin(), this->queue.rend(),
      |                          ^~~~~~~
      |                          find
make[2]: *** [src/CMakeFiles/gz-sim8.dir/build.make:206: src/CMakeFiles/gz-sim8.dir/ComponentFactory.cc.o] 錯誤 1
make[1]: *** [CMakeFiles/Makefile2:2266: src/CMakeFiles/gz-sim8.dir/all] 錯誤 2
make[1]: *** 正在等待未完成的作業....
[  3%] Built target common5
make: *** [Makefile:146: all] 錯誤 2
==> 錯誤: build() 遭遇失敗。
    正在中止...
錯誤: 建置「ignition-gazebo-8.0.0-1」失敗: 
錯誤: 建置軟體包失敗:ignition-gazebo-8.0.0-1

I think this error is related to https://github.com/gazebosim/gz-sim/issues/2413 and has beed fixed in https://github.com/gazebosim/gz-sim/pull/2414 but they haven`t release a new version yet. Can you include this patch into your build script?

e8035669 commented 3 hours ago

after apply patch above, another similar error met.

[ 38%] Building CXX object src/systems/perfect_comms/CMakeFiles/gz-sim8-perfect-comms-system.dir/PerfectComms.cc.o
[ 39%] Linking CXX shared library ../../../lib/libgz-sim8-perfect-comms-system.so
[ 39%] Linking CXX shared library ../../../lib/libgz-sim8-performer-detector-system.so
[ 39%] Built target gz-sim8-perfect-comms-system
[ 39%] Building CXX object src/systems/physics/CMakeFiles/gz-sim8-physics-system.dir/Physics.cc.o
在從下述位置 include 的檔案: /usr/include/gz/physics7/gz/physics/detail/FindFeatures.hh:25,
                 來自 /usr/include/gz/physics7/gz/physics/FindFeatures.hh:69,
                 來自 /home/jeff/.cache/paru/clone/ignition-gazebo/src/gz-sim-gz-sim8_8.0.0/src/systems/physics/Physics.hh:23,
                 來自 /home/jeff/.cache/paru/clone/ignition-gazebo/src/gz-sim-gz-sim8_8.0.0/src/systems/physics/Physics.cc:18:
/usr/include/gz/physics7/gz/physics/detail/InspectFeatures.hh: In static member function 「static void gz::physics::detail::InspectFeatures<PolicyT, FeatureT, <template-parameter-1-3> >::EraseIfMissing(const LoaderT&, ContainerT&)」:
/usr/include/gz/physics7/gz/physics/detail/InspectFeatures.hh:59:34: 錯誤:「find」 is not a member of 「std」; did you mean 「bind」?
   59 |             const auto it = std::find(acceptable.begin(), acceptable.end(), p);
      |                                  ^~~~
      |                                  bind
[ 39%] Built target gz-sim8-performer-detector-system
[ 40%] Building CXX object src/systems/pose_publisher/CMakeFiles/gz-sim8-pose-publisher-system.dir/PosePublisher.cc.o
[ 40%] Linking CXX shared library ../../../lib/libgz-sim8-pose-publisher-system.so
[ 40%] Built target gz-sim8-pose-publisher-system
[ 40%] Linking CXX shared library ../../../lib/libgz-sim8-python-system-loader-system.so
make[2]: *** [src/systems/physics/CMakeFiles/gz-sim8-physics-system.dir/build.make:76: src/systems/physics/CMakeFiles/gz-sim8-physics-system.dir/Physics.cc.o] 錯誤 1
make[1]: *** [CMakeFiles/Makefile2:4465: src/systems/physics/CMakeFiles/gz-sim8-physics-system.dir/all] 錯誤 2
make[1]: *** 正在等待未完成的作業....
[ 40%] Built target gz-sim8-python-system-loader-system
make: *** [Makefile:146: all] 錯誤 2
==> 錯誤: build() 遭遇失敗。
    正在中止...

I think its relate to https://github.com/gazebosim/gz-physics/issues/644 and also has been fixed in https://github.com/gazebosim/gz-physics/pull/645 I will try to rebuild gz-physics then continue to build gazebo