rst-tu-dortmund / mpc_local_planner

The mpc_local_planner package implements a plugin to the base_local_planner of the 2D navigation stack. It provides a generic and versatile model predictive control implementation with minimum-time and quadratic-form receding-horizon configurations.
http://wiki.ros.org/mpc_local_planner
GNU General Public License v3.0
566 stars 142 forks source link

melodic catkin_make error #11

Open beyoungglh opened 4 years ago

beyoungglh commented 4 years ago

hi, I have successfully installed ipopt and control_box_rst, but when i run catkin_make , i got the following error:

[ 29%] Building CXX object mpc_local_planner/mpc_local_planner/CMakeFiles/mpc_local_planner_optimal_control.dir/src/optimal_control/stage_inequality_se2.cpp.o
In file included from /home/glh/ROS_WS/mpc_ws/src/mpc_local_planner/mpc_local_planner/src/optimal_control/stage_inequality_se2.cpp:24:0:
/home/glh/ROS_WS/mpc_ws/src/mpc_local_planner/mpc_local_planner/include/mpc_local_planner/optimal_control/stage_inequality_se2.h:67:9: error: ‘int mpc_local_planner::StageInequalitySE2::getNonIntegralStateDtTermDimension(int) const’ marked ‘override’, but does not override
     int getNonIntegralStateDtTermDimension(int k) const override;
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/glh/ROS_WS/mpc_ws/src/mpc_local_planner/mpc_local_planner/src/optimal_control/stage_inequality_se2.cpp:24:0:
/home/glh/ROS_WS/mpc_ws/src/mpc_local_planner/mpc_local_planner/include/mpc_local_planner/optimal_control/stage_inequality_se2.h:80:10: error: ‘void mpc_local_planner::StageInequalitySE2::computeNonIntegralStateDtTerm(int, const Eigen::Ref<const Eigen::Matrix<double, -1, 1> >&, double, Eigen::Ref<Eigen::Matrix<double, -1, 1> >) const’ marked ‘override’, but does not override
     void computeNonIntegralStateDtTerm(int k, const Eigen::Ref<const Eigen::VectorXd>& x_k, double dt_k,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mpc_local_planner/mpc_local_planner/CMakeFiles/mpc_local_planner_optimal_control.dir/build.make:134: recipe for target 'mpc_local_planner/mpc_local_planner/CMakeFiles/mpc_local_planner_optimal_control.dir/src/optimal_control/stage_inequality_se2.cpp.o' failed
make[2]: *** [mpc_local_planner/mpc_local_planner/CMakeFiles/mpc_local_planner_optimal_control.dir/src/optimal_control/stage_inequality_se2.cpp.o] Error 1
CMakeFiles/Makefile2:625: recipe for target 'mpc_local_planner/mpc_local_planner/CMakeFiles/mpc_local_planner_optimal_control.dir/all' failed
make[1]: *** [mpc_local_planner/mpc_local_planner/CMakeFiles/mpc_local_planner_optimal_control.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed
croesmann commented 4 years ago

Hi, unfortunately, I needed to change the API of control_box_rst. It's already released, but not yet on the public servers (usually takes a few days/weeks). You either need to wait, use ros-testing apt servers, or compile control_box_rst from source

HumbertoE commented 4 years ago

Hello, I had the same error as beyoungglh. I compiled and installed control-box-rst from source as you kindly suggested, but I still find the same error both when building mpc_local_planner/mpc_local_planner and running make similar to what was suggested for control_box_rst, or running catkin_make in a workspace with the whole mpc_local_planner folder. Do you know what could be happening? Thank you

beyoungglh commented 4 years ago

thank you for your reply, i compiled successfully control_box_rst from master branch,

git clone -b master https://github.com/rst-tu-dortmund/control_box_rst.git

but when i roslaunch mpc examples ,I received another error :

[ INFO] [1591502607.620201686, 2.000000000]: local_costmap: Using plugin "obstacle_layer"
[ INFO] [1591502607.621912023, 2.000000000]:     Subscribed to Topics: laser_scan_sensor
[ INFO] [1591502607.675551689, 2.000000000]: Created local_planner mpc_local_planner/MpcLocalPlannerROS
[ INFO] [1591502607.681732576, 2.000000000]: Footprint model 'point' loaded for trajectory optimization.
[move_base-3] process has died [pid 7628, exit code -11, cmd /opt/ros/melodic/lib/move_base/move_base __name:=move_base __log:=/home/glh/.ros/log/d599a5c4-a873-11ea-a843-7cb27d93ea09/move_base-3.log].
log file: /home/glh/.ros/log/d599a5c4-a873-11ea-a843-7cb27d93ea09/move_base-3*.log

gdb shows the problem seems to be in ipopt, do you have any suggestions?

mxpfeng commented 4 years ago

thank you for your reply, i compiled successfully control_box_rst from master branch,

git clone -b master https://github.com/rst-tu-dortmund/control_box_rst.git

but when i roslaunch mpc examples ,I received another error :

[ INFO] [1591502607.620201686, 2.000000000]: local_costmap: Using plugin "obstacle_layer"
[ INFO] [1591502607.621912023, 2.000000000]:     Subscribed to Topics: laser_scan_sensor
[ INFO] [1591502607.675551689, 2.000000000]: Created local_planner mpc_local_planner/MpcLocalPlannerROS
[ INFO] [1591502607.681732576, 2.000000000]: Footprint model 'point' loaded for trajectory optimization.
[move_base-3] process has died [pid 7628, exit code -11, cmd /opt/ros/melodic/lib/move_base/move_base __name:=move_base __log:=/home/glh/.ros/log/d599a5c4-a873-11ea-a843-7cb27d93ea09/move_base-3.log].
log file: /home/glh/.ros/log/d599a5c4-a873-11ea-a843-7cb27d93ea09/move_base-3*.log

gdb shows the problem seems to be in ipopt, do you have any suggestions?

Hi, @croesmann . I had the same error as @beyoungglh .Thanks for your help.

croesmann commented 4 years ago

I cannot reproduce the error. In a clean melodic install, I did:

sudo apt install coinor-libipopt-dev 
git clone https://index.ros.org/p/control_box_rst
cd control_box_rst
mkdir build
cd build
cmake ..
make -j8 -l8
sudo make install
cd ~/catkin_make/src
git clone https://github.com/rst-tu-dortmund/mpc_local_planner
cd ..
catkin_make

And all examples worked fine. Did you invoked similar steps?

beyoungglh commented 4 years ago

yes, In a clean melodic install,it's worked. but i did the same steps before...

HumbertoE commented 4 years ago

Hello. Sorry, but i still get the same error that @beyoungglh got at the beginning, even in a clean melodic install. The steps that i followed, are the following, which are basically what you kindly suggested @croesmann, just changing the directories to clone control_box_rst

sudo apt install coinor-libipopt-dev mkdir extra_packages cd extra_packages/ git clone https://github.com/rst-tu-dortmund/control_box_rst.git cd control_box_rst/ mkdir build cd build cmake .. make -j8 -l8 sudo make install mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone https://github.com/rst-tu-dortmund/mpc_local_planner cd .. catkin_make

I also ran rosdep install --from-paths src --ignore-src -r -y but it says all required rosdeps are installed.

Geonhee-LEE commented 4 years ago

I also had same problem. I already installed the IpOpt, control_box_rst on Ubuntu 18.04 and ROS melodic.

`[ INFO] [1593680098.239528520]: Loading map from image "/home/syscon/catkin_ws/src/mpc_local_planner/mpc_local_planner_examples/maps/maze.png" [ INFO] [1593680098.267503210]: Subscribed to map topic. [ INFO] [1593680098.765109510, 0.300000000]: Read a 200 X 200 map @ 0.050 m/cell [ INFO] [1593680098.940025408, 0.400000000]: Received a 200 X 200 map @ 0.050 m/pix

[ INFO] [1593680098.946633669, 0.400000000]: Initializing likelihood field model; this can take some time on large maps... [ INFO] [1593680098.977113497, 0.500000000]: Done initializing likelihood field model. [ INFO] [1593680099.967217273, 1.500000000]: global_costmap: Using plugin "static_layer" [ INFO] [1593680099.979847160, 1.500000000]: Requesting the map... [ INFO] [1593680100.161227130, 1.700000000]: Resizing costmap to 200 X 200 at 0.050000 m/pix [ INFO] [1593680100.261338837, 1.800000000]: Received a 200 X 200 map at 0.050000 m/pix [ INFO] [1593680100.267143751, 1.800000000]: global_costmap: Using plugin "obstacle_layer" [ INFO] [1593680100.274259822, 1.800000000]: Subscribed to Topics: laser_scan_sensor [ INFO] [1593680100.293379235, 1.800000000]: global_costmap: Using plugin "inflation_layer" [ INFO] [1593680100.323378988, 1.800000000]: local_costmap: Using plugin "static_layer" [ INFO] [1593680100.325382757, 1.800000000]: Requesting the map... [ INFO] [1593680100.326128869, 1.800000000]: Resizing static layer to 200 X 200 at 0.050000 m/pix [ INFO] [1593680100.360703243, 1.900000000]: Received a 200 X 200 map at 0.050000 m/pix [ INFO] [1593680100.362614763, 1.900000000]: local_costmap: Using plugin "obstacle_layer" [ INFO] [1593680100.363943098, 1.900000000]: Subscribed to Topics: laser_scan_sensor [ INFO] [1593680100.391452737, 1.900000000]: Created local_planner mpc_local_planner/MpcLocalPlannerROS [ INFO] [1593680100.395930748, 1.900000000]: Footprint model 'line' (line_start: [0,0]m, line_end: [0.4,0]m) loaded for trajectory optimization. [move_base-3] process has died [pid 23895, exit code -11, cmd /opt/ros/melodic/lib/move_base/move_base __name:=move_base __log:=/home/syscon/.ros/log/b46d8ff0-bc41-11ea-b923-0c7a15d8a15d/move_base-3.log]. log file: /home/syscon/.ros/log/b46d8ff0-bc41-11ea-b923-0c7a15d8a15d/move_base-3*.log`

MichelleHusbands commented 4 years ago

Hello, I am having the same issue. I have corbo and mpc packages installed on ROS Melodic. Every time I try catkin_make I get the same error that it cannot find corbo-core headers file that are obviously on my Ros include path. Have anyone solved this issue? Or being able to work around it?

ElClopitan commented 4 years ago

Screenshot from 2020-11-25 13-11-59 Same move_base dying issue on Noetic

ElClopitan commented 3 years ago

Figured out my issue. Installed IPOPT with both apt-get and from source. It is now working for me on noetic. Just want to clarify, installing both was the issue. Uninstalled the apt-get version and now examples are running great.

MichelleHusbands commented 3 years ago

Hey @ElClopitan, I did the same and it is building in Melodic as well!

MuXingchui commented 2 years ago

Figured out my issue. Installed IPOPT with both apt-get and from source. It is now working for me on noetic. Just want to clarify, installing both was the issue. Uninstalled the apt-get version and now examples are running great.

Hey @ElClopitan , Can you tell me how to uninstalled the apt-get version, please!

ElClopitan commented 2 years ago

Pretty sure sudo apt-get remove —purge <package> will work.

MuXingchui commented 2 years ago

Pretty sure sudo apt-get remove —purge <package> will work.

Thank you!

MuXingchui commented 2 years ago

mpc_local_planner_issues Can someone tell me why there is such an error when I run the example? And how to fix it.

ElClopitan commented 2 years ago

When you compile from source, you need to also get the (I think) optional MUMPS solver. Sorry it has been a year since I did this.

MuXingchui commented 2 years ago

When you compile from source, you need to also get the (I think) optional MUMPS solver. Sorry it has been a year since I did this.

Got it. I think I know where is wrong. Thank you!

ElClopitan commented 2 years ago

Maybe post your problem and solution when you get it in case someone needs help in the future. :D

MuXingchui commented 2 years ago

mpc_local_planner_issues Can someone tell me why there is such an error when I run the example? And how to fix it.

I fixed the issue. Thanks to @ElClopitan . This is a problem caused by the lack of the optional MUMPS solver. My method is to reinstall IPOPT. If you have similar or same problems with me, you can refer to my method. After getting the source code of IPOPT, you can do something as follow.

cd ~/Ipopt-3.12.7/ThirdParty/Mumps
./get.Mumps
cd ../../ 
mkdir build
cd build
sudo ../configure --prefix=/usr/local/
sudo make