Why the software has to "detect OS" ? What about writing portable code ?
OS is Mageia Linux localhost.localdomain 5.6.14-desktop-2.mga7
ERROR: Rosdep experienced an error: Could not detect OS, tried ['zorin', 'windows', 'nixos', 'clearlinux', 'ubuntu', 'slackware', 'rhel', 'qnx', 'pop', 'osx', 'sailfishos', 'tizen', 'opensuse', 'opensuse', 'opensuse', 'opensuse', 'openembedded', 'neon', 'mx', 'mint', 'linaro', 'gentoo', 'funtoo', 'freebsd', 'fedora', 'elementary', 'elementary', 'debian', 'cygwin', 'centos', 'manjaro', 'arch', 'alpine']
Please go to the rosdep page [1] and file a bug report with the stack trace below.
[1] : http://www.ros.org/wiki/rosdep
rosdep version: 0.19.0
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/rosdep2/main.py", line 144, in rosdep_main
exit_code = _rosdep_main(args)
File "/usr/local/lib/python3.7/site-packages/rosdep2/main.py", line 428, in _rosdep_main
return _no_args_handler(command, parser, options, args)
File "/usr/local/lib/python3.7/site-packages/rosdep2/main.py", line 437, in _no_args_handler
return command_handlers[command](options)
File "/usr/local/lib/python3.7/site-packages/rosdep2/main.py", line 649, in command_update
ros_distro=options.ros_distro)
File "/usr/local/lib/python3.7/site-packages/rosdep2/sources_list.py", line 507, in update_sources_list
rosdep_data = get_gbprepo_as_rosdep_data(dist_name)
File "/usr/local/lib/python3.7/site-packages/rosdep2/gbpdistro_support.py", line 150, in get_gbprepo_as_rosdep_data
ctx = create_default_installer_context()
File "/usr/local/lib/python3.7/site-packages/rosdep2/__init__.py", line 90, in create_default_installer_context
m.register_platforms(context)
File "/usr/local/lib/python3.7/site-packages/rosdep2/platforms/debian.py", line 55, in register_platforms
register_elementary(context)
File "/usr/local/lib/python3.7/site-packages/rosdep2/platforms/debian.py", line 82, in register_elementary
(os_name, os_version) = context.get_os_name_and_version()
File "/usr/local/lib/python3.7/site-packages/rosdep2/installers.py", line 115, in get_os_name_and_version
os_name = self.os_detect.get_name()
File "/usr/local/lib/python3.7/site-packages/rospkg/os_detect.py", line 698, in get_name
self.detect_os()
File "/usr/local/lib/python3.7/site-packages/rospkg/os_detect.py", line 668, in detect_os
raise OsNotDetected("Could not detect OS, tried %s" % attempted)
rospkg.os_detect.OsNotDetected: Could not detect OS, tried ['zorin', 'windows', 'nixos', 'clearlinux', 'ubuntu', 'slackware', 'rhel', 'qnx', 'pop', 'osx', 'sailfishos', 'tizen', 'opensuse', 'opensuse', 'opensuse', 'opensuse', 'openembedded', 'neon', 'mx', 'mint', 'linaro', 'gentoo', 'funtoo', 'freebsd', 'fedora', 'elementary', 'elementary', 'debian', 'cygwin', 'centos', 'manjaro', 'arch', 'alpine']
Edit: Found the following issue:
-- Searching for Poco library...
CMake Error at /home/mtm/TP/ROS/ros_catkin_ws/install_isolated/share/cmake_modules/cmake/Modules/FindPoco.cmake:189 (MESSAGE):
Poco was not found. Set the Poco_INCLUDE_DIR cmake cache entry to the
top-level directory containing the poco include directories. E.g
/usr/local/include/ or c:\poco\include\poco-1.3.2
Call Stack (most recent call first):
CMakeLists.txt:24 (find_package)
I downloaded, compiled and installed poco in /opt/poco
I set the variable specified in:
ros_catkin_ws/install_isolated/share/cmake_modules/cmake/Modules/FindPoco.cmake
also in
ros_catkin_ws/src/class_loader/CMakeLists.txt
I also set the environment variable export POCO_ROOT=/opt/poco/
before launching
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release
Nothing changes. I purposely added some junk in FindPoco.cmake to make sure it is actually executed. It was not !!!
Therefore, all this compilation framework created some cache and it seems to not be looking anymore for changed in the files ...