MAPIRlab / gaden

GADEN: A 3D Gas Dispersion Simulator for Mobile Robot Olfaction in Realistic Environments
GNU Lesser General Public License v3.0
56 stars 34 forks source link

fatal error: olfaction_msgs/gas_sensor_array.h: No such file or directory #include <olfaction_msgs/gas_sensor_array.h> #19

Closed GMDFr closed 3 years ago

GMDFr commented 3 years ago

Hi, First, it's a really great job, rare are the gas simulation on ROS.

The background : I work with Gaden to implement a robot to simulate a chemical servoing. We would like to test few algorithms to locate the gas source. I installed Stage from source in my /home space. I success to compile in a workspace dedicated : Finished <<< gaden_preprocessing [ 0.1 seconds ]
Finished <<< gaden_filament_simulator [ 0.1 seconds ]
Finished <<< gaden_environment [ 0.1 seconds ]
Finished <<< test_env [ 0.1 seconds ]
Finished <<< olfaction_msgs [ 0.1 seconds ]
Finished <<< gaden_player [ 0.2 seconds ] [build] Summary: All 6 packages succeeded!

I also be able to preprocess, GADEN.launch, GADEN_player.launch & main_simbot.launch. But the robot doesn't move, probably due to the packages which don't compile.

The Problem : When I want to compile the following package : gsl_actionserver simulated_gas_sensor simulated_gas_sensor_array

I got the following error : fatal error: olfaction_msgs/gas_sensor_array.h: No such file or directory

include <olfaction_msgs/gas_sensor_array.h>

I tried :

Did you encounter the same problem ? How I can resolve the lacking header ?

Thank's you so much

svtary commented 3 years ago

i have the similar problem.did u solve it? thanks

PepeOjeda commented 3 years ago

Hello. First, please make sure you have downloaded the olfaction messages package into your catkin workspace. If you already have, the problem may be caused by the order of compilation, since the actual header files for the message definitions (.h) are not in the package source code, and are instead auto-generated at compilation. Therefore, it is possible the headers do not yet exist at the point the other packages that need them are compiled.

The easiest solution to this is to simply run catkin_make twice in a row. The first time there might be packages that fail to compile, but the message headers will be generated, making the second compile work.

If for some reason this still failed, try placing a CATKIN_IGNORE file inside of the packages that complain about dependencies so that you can do an error-free compilation of the message files, and then remove the CATKIN_IGNORE files for the second compilation.

GMDFr commented 3 years ago

Hello, We succeed to solve it and we worked on a more "ROS" like structure with the collaboration of Pepe. This package will be send to the GADEN Team first, to validate and will be publish open source with their permission :) Also, as Pepe said, the library you are looking for are on the mentionned github or on your devel folder.

On my side, this issue is solved.

Best regards

svtary commented 3 years ago

thanks a lot,the problem was solved by running catkin_make twice .thx for your help~

------------------ 原始邮件 ------------------ 发件人: "MAPIRlab/gaden" <notifications@github.com>; 发送时间: 2021年2月1日(星期一) 凌晨0:23 收件人: "MAPIRlab/gaden"<gaden@noreply.github.com>; 抄送: "sVtary"<654018037@qq.com>;"Comment"<comment@noreply.github.com>; 主题: Re: [MAPIRlab/gaden] fatal error: olfaction_msgs/gas_sensor_array.h: No such file or directory #include <olfaction_msgs/gas_sensor_array.h> (#19)

Hello. First, please make sure you have downloaded the olfaction messages package into your catkin workspace. If you already have, the problem may be caused by the order of compilation, since the actual header files for the message definitions (.h) are not in the package source code, and are instead auto-generated at compilation. Therefore, it is possible the headers do not yet exist at the point the other packages that need them are compiled.

The easiest solution to this is to simply run catkin_make twice in a row. The first time there might be packages that fail to compile, but the message headers will be generated, making the second compile work.

If for some reason this still failed, try placing a CATKIN_IGNORE file inside of the packages that complain about dependencies so that you can do an error-free compilation of the message files, and then remove the CATKIN_IGNORE files for the second compilation.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

svtary commented 3 years ago

hi,first i would say thanks a lot,the problem was solved by running catkin_make twice .thx for your help~

------------------ 原始邮件 ------------------ 发件人: "MAPIRlab/gaden" <notifications@github.com>; 发送时间: 2021年2月1日(星期一) 下午5:21 收件人: "MAPIRlab/gaden"<gaden@noreply.github.com>; 抄送: "sVtary"<654018037@qq.com>;"Comment"<comment@noreply.github.com>; 主题: Re: [MAPIRlab/gaden] fatal error: olfaction_msgs/gas_sensor_array.h: No such file or directory #include <olfaction_msgs/gas_sensor_array.h> (#19)

Hello, We succeed to solve it and we worked on a structure more "ROS" like with the collaboration of Pepe. This package will be send to the GADEN Team first, to validate and will be publish open source with their permission :) Also, as Pepe said, the library your are looking for are on the mentionned github or on your devel folder.

On my side, this issue is solved.

Best regards

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

svtary commented 3 years ago

hello,sorry for bothering u again,i tried gaden in rviz,it's very convenient ,however,i want to use the test environment in gazebo, i'm not sure whether gaden could be used in gazebo,if it could ,how? thank u a lot .

------------------ 原始邮件 ------------------ 发件人: "MAPIRlab/gaden" <notifications@github.com>; 发送时间: 2021年2月1日(星期一) 凌晨0:23 收件人: "MAPIRlab/gaden"<gaden@noreply.github.com>; 抄送: "sVtary"<654018037@qq.com>;"Comment"<comment@noreply.github.com>; 主题: Re: [MAPIRlab/gaden] fatal error: olfaction_msgs/gas_sensor_array.h: No such file or directory #include <olfaction_msgs/gas_sensor_array.h> (#19)

Hello. First, please make sure you have downloaded the olfaction messages package into your catkin workspace. If you already have, the problem may be caused by the order of compilation, since the actual header files for the message definitions (.h) are not in the package source code, and are instead auto-generated at compilation. Therefore, it is possible the headers do not yet exist at the point the other packages that need them are compiled.

The easiest solution to this is to simply run catkin_make twice in a row. The first time there might be packages that fail to compile, but the message headers will be generated, making the second compile work.

If for some reason this still failed, try placing a CATKIN_IGNORE file inside of the packages that complain about dependencies so that you can do an error-free compilation of the message files, and then remove the CATKIN_IGNORE files for the second compilation.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

PepeOjeda commented 3 years ago

I'm afraid I am not familiar with Gazebo, so I can't help you with the details, but it should be possible. Once the filament simulator has already been run and the log files generated, you would have to create a new launch file that includes the gaden_player node, as well as gazebo, and then use topics to communicate with gaden_player from the code of your application.

forgetto commented 1 year ago

Hi, it's a very good job, rare are the gas simulation on ROS. I also encountered the above problems, trying the above two methods failed to solve. I would like to ask if it is possible that I changed the olfaction messages package from ros2 to ros1. I hope someone can answer it. thank you If the original package of ros1 is available, so much the better.

PepeOjeda commented 1 year ago

Hello. The ros1 and ros2 versions of the olfaction_msgs package are both available here as separate branches. See the ros1 branch.

forgetto commented 1 year ago

@PepeOjeda Thank you very much. My problem has been solved