popi-mkx3 / popi_project

Here is everything you need to know about POPI, our open-source quadruped robot. If you want to check the videos we will release about it, you can have a look at our YouTube channel.
https://www.youtube.com/channel/UCaCy-1MX6SoqdtjZH4uU_TA
BSD 3-Clause "New" or "Revised" License
106 stars 25 forks source link

catkin_make_isolated error #1

Closed koukiuchida closed 3 years ago

koukiuchida commented 4 years ago

Hello every one,I installed all dependences and cloned all popi_project packages. When i run catkin_make_isolated,it shows that:

[ 69%] Building CXX object CMakeFiles/towr_user_interface.dir/src/towr_user_interface.cc.o /home/uchidavm/catkin_ws4/src/popi_project/popi_software/towr/towr/towr_ros/src/towr_user_interface.cc: In constructor ‘towr::TowrUserInterface::TowrUserInterface()’: /home/uchidavm/catkin_ws4/src/popi_project/popi_software/towr/towr/towr_ros/src/towr_userinterface.cc:70:29: error: ‘Popi’ is not a member of ‘towr::RobotModel’ robot = RobotModel::Popi; ^~~~ CMakeFiles/towr_user_interface.dir/build.make:62: recipe for target 'CMakeFiles/towr_user_interface.dir/src/towr_user_interface.cc.o' failed make[2]: [CMakeFiles/towr_user_interface.dir/src/towr_user_interface.cc.o] Error 1 CMakeFiles/Makefile2:675: recipe for target 'CMakeFiles/towr_user_interface.dir/all' failed make[1]: [CMakeFiles/towr_user_interface.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2 <== Failed to process package 'towr_ros': Command '['/home/uchidavm/catkin_ws4/devel_isolated/xpp_popi/env.sh', 'make', '-j1', '-l1']' returned non-zero exit status 2

Reproduce this error by running: ==> cd /home/uchidavm/catkin_ws4/build_isolated/towr_ros && /home/uchidavm/catkin_ws4/devel_isolated/xpp_popi/env.sh make -j1 -l1

Command failed, exiting.

It occures in package of towr_ros

I want to fix this error ,what shoud I do?

running environment Oracle VM VirtualBox, ubuntu18.04,ros melodic

popi-mkx3 commented 4 years ago

Hello koukuichida, first of all thank you for your interest !

This is really unfortunate, we already once encountered this error and I thought I resolved it, we even tried twice to follow all our instructions on a whole new ubuntu environment to make sure everything was OK. Therefore it appears to be somehow random, which makes it hard to find a proper fix.

The way I understand it, it should be because the header defining "Popi" in the RobotModel class isn't properly compiled. I'll do my best to have a look at the problem and come up with some things you could try. In the meantime, if you find a solution please let us know.

Cheers, Lucas

koukiuchida commented 4 years ago

Thanks for replyng of my issue. I changed the program /home/uchidavm/catkin_ws4/src/popi_project/popi_software/towr/towr/towr_ros/src/towr_user_interface.cc:70:

robot_ = RobotModel::Monoped;//Popi;

I comment-outed Popi and replaced to Monoped.

Then I retried to run catkin_make_isolated, finally catkin_make_isolated finish

Is this changing correct method ?

popi-mkx3 commented 4 years ago

This is also the first thing I tried and it is a good workaround to make sure the catkin_make_isolated compiles until the end. Though when I tried it, it appeared the POPI model wasn't available in Towr. Please run the following : roslaunch towr_ros towr_ros_popi.launch

Then on the towr user interface, hit "r" to change the robot model. If you see "Popi" at some point, everything should work properly.

koukiuchida commented 4 years ago

I ran "roslaunch towr_ros towr_ros_popi.launch" and hit "r". Then I could see Popi on Towr and Towr wroked normally!

In this environment, I have no error at present So I'll study popi this environment for a while

Thanks!

Screenshot from 2020-05-14 20-31-41

popi-mkx3 commented 4 years ago

This is great, thanks for the feedback.

If you have any question or suggestion on how we could improve things please get in touch.