Closed Robokan closed 1 year ago
Best bet: you overwrite the ${CMAKE_CXX_FLAGS} in your code, instead of appending to it.
What should I override it to be? I am not currently appending to CMAKE_CXX_FLAGS anywhere in my code. It's just a simple node to test to see if ROS is working. Any insight into why this is happening? is it some kind of library clash or version incompatibility with the header files?
Can you please provide a link to your code?
#include <ros/ros.h>
int main (init argc, char **argv)
{
res:init(argc, argv, "my_first_cpp_node");
ros::NodeHandle ah;
ROS_INFO("Node has been started");
ros::Duration(1.0).sleep();
ROS_INFO("exit");
}
one other weird thing I noticed after installing is when I source the setup file I get this error:
conda activate robostackenv /Users/eric/miniforge3/envs/robostackenv/etc/catkin/profile.d/99.roslisp.sh:21: no such file or directory: /Users/runner/mambaforge/conda-bld/ros-noetic-roslisp-0_1674181617630/_build_env/bin/python
Somehow /Users/runner is being referenced after installation. I don't have any users on my machine with that name.
I cannot replicate any of those issues locally, apologies. You have numerous typos etc. in your C++ code and CMakeLists.txt. Attached is a project that I can compile without problems.
If you can't get it to work, please provide a detailed list of commands that you run.
Your example also crashes in the time header when I try it.
The only command I am running is: catkin_make
maybe this is just a OSX specific issue?
I was trying on osx .. do you have the “compilers” package installed? I’ve only tried using catkin_tools, can you please try installing this and run “catkin build” instead of “catkin_make”?
I removed the build and devel directories and built with "catkin build" and it works! Thanks. what is the command to install the compilers package?
The tutorial I am doing is using catkin_make. What happens when you use catkin_make on your machine?
catkin_make works fine for me, too.
mamba install compilers
I still have the same compile issue. As it works on your side there must be some kind of configuration issue on my side. I have a linux machine coming soon so I will probably just try things out there which hopefully should resolve things. I will just use catkin build for now. Thanks of the help.
Thanks @Robokan - closing for now, feel free to reopen.
Solution to issue cannot be found in the documentation.
Issue
Fresh install on macOS Monterey everything seems to work until I tried to create a package with a CPP node in it. Trying to include <ros/ros.h> crashes somewhere in the timer code.
[ 50%] Building CXX object my_robot_tutorials/CMakeFiles/node_cpp.dir/src/my_first_node.cpp.o In file included from /Users/eric/catkin_ws/src/my_robot_tutorials/src/my_first_node.cpp:1: In file included from /Users/eric/miniforge3/envs/robostackenv/include/ros/ros.h:38: In file included from /Users/eric/miniforge3/envs/robostackenv/include/ros/time.h:53: In file included from /Users/eric/miniforge3/envs/robostackenv/include/ros/platform.h:38: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/string:525: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/algorithm:667: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/functional:506: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/functional/function.h:22: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/memory/shared_ptr.h:35: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/atomic:523: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/thread/poll_with_backoff.h:14: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/chrono:697: In file included from /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/chrono/calendar.h:14: /Users/eric/miniforge3/envs/robostackenv/bin/../include/c++/v1/__chrono/system_clock.h:37:12: error: reference to unresolved using declaration static time_t to_time_t (const time_point& __t) _NOEXCEPT;
Installed packages
Environment info