SBG-Systems / sbg_ros_driver

ROS 1 driver for SBG Systems IMU/AHRS/INS units such as ELLIPSE or QUANTA.
https://www.sbg-systems.com
MIT License
75 stars 43 forks source link

Minor correction to be compatible with ROS for Windows #70

Closed lebarsfa closed 2 years ago

lebarsfa commented 2 years ago

Dear all,

-Wall -Wextra in https://github.com/SBG-Systems/sbg_ros_driver/blob/2975fe3b3562e0b4d4a261ec8a6cc7c68d1e9e01/CMakeLists.txt#L109 https://github.com/SBG-Systems/sbg_ros_driver/blob/2975fe3b3562e0b4d4a261ec8a6cc7c68d1e9e01/CMakeLists.txt#L113 causes the build to fail with ROS for Windows, if we remove them the default launch file works. If -Wall -Wextra is really desired on Linux, those lines could be replaced with e.g.

if(WIN32)
target_compile_options(sbg_device PRIVATE)
else()
target_compile_options(sbg_device PRIVATE -Wall -Wextra)
endif()
if(WIN32)
target_compile_options(sbg_device_mag PRIVATE)
else()
target_compile_options(sbg_device_mag PRIVATE -Wall -Wextra)
endif()
mzembsbg commented 2 years ago

Hi. That's an option, but I'd rather fix the warning. As I don't have any warning from CMake, gcc nor clang, and currently no windows environnement can you copy-paste your build log so that I can investigate a bit ?

mzembsbg commented 2 years ago

By the way, It would seem better to remove -Werror from your build options to allow building despite warnings instead of hiding them completely by removing -Wall and -Wextra options.

lebarsfa commented 2 years ago

One of the main specificity with ROS for Windows is that Visual Studio compiler (cl.exe) is used instead of g++, so -Wextra option is not supported (see https://docs.microsoft.com/fr-fr/cpp/build/reference/compiler-options-listed-by-category?view=msvc-160). I use directly the code from master branch, without modification (no explicit -Werror, which would not be supported by cl.exe). Here is what I get using sbg_ros_driver 3.1.1 in an existing ROS noetic workspace:

C:\catkin_ws>catkin_make
Base path: C:\catkin_ws
Source space: C:\catkin_ws\src
Build space: C:\catkin_ws\build
Devel space: C:\catkin_ws\devel
Install space: C:\catkin_ws\install
####
#### Running command: "cmake C:\catkin_ws\src -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCATKIN_DEVEL_PREFIX=C:\catkin_ws\devel -DCMAKE_INSTALL_PREFIX=C:\catkin_ws\install -G Ninja" in "C:\catkin_ws\build"
####
-- The C compiler identification is MSVC 19.29.30136.0
-- The CXX compiler identification is MSVC 19.29.30136.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using CATKIN_DEVEL_PREFIX: C:/catkin_ws/devel
-- Using CMAKE_PREFIX_PATH: C:\opt\ros\noetic\x64\tools\vcpkg\installed\x64-windows;c:\opt\ros\noetic\x64
-- This workspace overlays: c:/opt/ros/noetic/x64
-- Found PythonInterp: C:/opt/ros/noetic/x64/python.exe (found suitable version "3.8.3", minimum required is "3")
-- Using PYTHON_EXECUTABLE: C:/opt/ros/noetic/x64/python.exe
-- Using default Python package layout
-- Found PY_em: C:\opt\ros\noetic\x64\lib\site-packages\em.py
-- Using empy: C:/opt/ros/noetic/x64/lib/site-packages/em.py
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: C:/catkin_ws/build/test_results
-- Found gtest: gtests will be built
-- Using Python nosetests: C:/opt/ros/noetic/x64/Scripts/nosetests.exe
-- catkin 0.8.9
-- BUILD_SHARED_LIBS is on
-- BUILD_SHARED_LIBS is on
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~  traversing 1 packages in topological order:
-- ~~  - sbg_driver
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ processing catkin package: 'sbg_driver'
-- ==> add_subdirectory(sbg_ros_driver)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- sbg_driver: 28 messages, 0 services
-- Configuring done
-- Generating done
-- Build files have been written to: C:/catkin_ws/build
####
#### Running command: "ninja -j8 -l8" in "C:\catkin_ws\build"
####
[27/236] Building C object sbg_ros_driver\external\sbgECom\CMakeFiles\sbgECom.dir\common\network\sbgNetwork.c.obj
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\network\sbgNetwork.c(27): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\network\sbgNetwork.c(51): warning C4996: 'sscanf': This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
[39/236] Building C object sbg_ros_driver\external\sbgECom\CMakeFiles\sbgECom.dir\common\platform\sbgPlatform.c.obj
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\platform\sbgPlatform.c(93): warning C4996: 'vsprintf': This function or variable may be unsafe. Consider using vsprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
[40/236] Building C object sbg_ros_driver\external\sbgECom\CMakeFiles\sbgECom.dir\src\sbgECom.c.obj
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(255): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(258): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(261): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(264): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(267): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(270): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(273): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(276): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(279): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(282): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(285): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(288): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(291): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(294): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(297): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(300): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(303): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(306): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(309): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(312): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src\sbgECom.c(315): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
[46/236] Building C object sbg_ros_driver\external\sbgECom...Files\sbgECom.dir\common\interfaces\sbgInterfaceFile.c.obj
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\interfaces\sbgInterfaceFile.c(33): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\interfaces\sbgInterfaceFile.c(89): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
[48/236] Building C object sbg_ros_driver\external\sbgECom\CMakeFiles\sbgECom.dir\common\interfaces\sbgInterface.c.obj
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\interfaces\sbgInterface.c(75): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\interfaces\sbgInterface.c(79): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
[49/236] Building C object sbg_ros_driver\external\sbgECom\CMakeFiles\sbgECom.dir\common\version\sbgVersion.c.obj
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(348): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(351): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(354): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(357): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(360): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(363): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(340): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(389): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(461): warning C4996: 'sscanf': This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common\version\sbgVersion.c(476): warning C4996: 'sscanf': This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
[223/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device.dir\src\message_publisher.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device.dir/src/message_publisher.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device.dir\src\message_publisher.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\message_publisher.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[224/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device.dir\src\config_applier.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device.dir/src/config_applier.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device.dir\src\config_applier.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\config_applier.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[225/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device.dir\src\message_wrapper.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device.dir/src/message_wrapper.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device.dir\src\message_wrapper.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\message_wrapper.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[226/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device.dir\src\config_store.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device.dir/src/config_store.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device.dir\src\config_store.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\config_store.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[227/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device.dir\src\sbg_device.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device.dir/src/sbg_device.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device.dir\src\sbg_device.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\sbg_device.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[228/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device.dir\src\main.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device.dir/src/main.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device.dir\src\main.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\main.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[229/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device_mag.dir\src\message_publisher.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device_mag.dir/src/message_publisher.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device_mag.dir\src\message_publisher.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device_mag.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\message_publisher.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
[230/236] Building CXX object sbg_ros_driver\CMakeFiles\sbg_device_mag.dir\src\config_store.cpp.obj
FAILED: sbg_ros_driver/CMakeFiles/sbg_device_mag.dir/src/config_store.cpp.obj
C:\PROGRA~2\MIB055~1\2019\COMMUN~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"sbg_driver\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -IC:\catkin_ws\devel\include -IC:\opt\ros\noetic\x64\include -IC:\opt\ros\noetic\x64\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include -IC:\opt\ros\noetic\x64\share\orocos_kdl\..\..\include\eigen3 -IC:\catkin_ws\src\sbg_ros_driver\include\sbg_driver -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\common -IC:\catkin_ws\src\sbg_ros_driver\external\sbgECom\src /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /Zi /O2 /Ob1 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus -Wall -Wextra /showIncludes /Fosbg_ros_driver\CMakeFiles\sbg_device_mag.dir\src\config_store.cpp.obj /Fdsbg_ros_driver\CMakeFiles\sbg_device_mag.dir\ /FS -c C:\catkin_ws\src\sbg_ros_driver\src\config_store.cpp
cl : Command line error D8021 : invalid numeric argument '/Wextra'
ninja: build stopped: subcommand failed.
Invoking "ninja -j8 -l8" failed
mzembsbg commented 2 years ago

That makes sense. I just pushed your proposed change to the devel branch. It will be on the master branch in our next release. Thank you.