Description
qt_gui_core seems to have problems with Clang.
Ubuntu Focal / ROS Master from source
It builds under GCC, though with the following warning about Clang (even though it shouldn't be using Clang at all and llvm-config for the active clang version is in my $PATH
):
Starting >>> qt_gui_cpp
--- stderr: qt_gui_cpp
qt.shiboken: (typesystem) Unable to locate Clang's built-in include directory (neither by checking the environment variables LLVM_INSTALL_DIR, CLANG_INSTALL_DIR nor running llvm-config). This may lead to parse errors.
(typesystem) clang_parseTranslationUnit2(0x0, cmd[23]=-fPIC -Wno-constant-logical-operand -std=c++14 -I/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include -I/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include -I/usr/include -I/opt/ros/master/install/include -I/usr/include -I/opt/ros/master/install/include -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/usr/include/PySide2 -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 -I/usr/include/c++/9/backward -I/usr/lib/gcc/x86_64-linux-gnu/9/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include /tmp/global_vrHBNn.hpp)
qt.shiboken: (typesystem) Enum 'RCUTILS_LOG_SEVERITY' does not have a type entry
qt.shiboken: (typesystem) While traversing QOpenGLShaderProgram: setAttributeArray(int,const float*,int,int): Cannot use parameter 2 as an array: <array> modification already applied.
qt.shiboken: (typesystem) class 'QAccessibleWidget' inherits from unknown base class 'QAccessibleActionInterface'
qt.shiboken: (typesystem) class not found for setup inheritance 'QAccessibleActionInterface'
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
---
Finished <<< qt_gui_cpp [8.68s]
Under Clang 9, I get warnings:
--- stderr: qt_gui_cpp
qt.shiboken: (typesystem) CLANG builtins includes directory: /usr/lib/llvm-9/lib/clang/9/include
(typesystem) clang_parseTranslationUnit2(0x0, cmd[24]=-isystem/usr/lib/llvm-9/lib/clang/9/include -fPIC -Wno-constant-logical-operand -std=c++14 -I/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include -I/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include -I/usr/include -I/opt/ros/master/install/include -I/usr/include -I/opt/ros/master/install/include -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/usr/include/PySide2 -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 -I/usr/include/c++/9/backward -I/usr/local/include -I/usr/lib/llvm-9/lib/clang/9.0.1/include -I/usr/include/x86_64-linux-gnu -I/usr/include /tmp/global_ECupdS.hpp)
qt.shiboken: (typesystem) Enum 'RCUTILS_LOG_SEVERITY' does not have a type entry
qt.shiboken: (typesystem) While traversing QOpenGLShaderProgram: setAttributeArray(int,const float*,int,int): Cannot use parameter 2 as an array: <array> modification already applied.
qt.shiboken: (typesystem) class 'QAccessibleWidget' inherits from unknown base class 'QAccessibleActionInterface'
qt.shiboken: (typesystem) class not found for setup inheritance 'QAccessibleActionInterface'
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
Under Clang 10 (and 11), I get build errors:
--- stderr: qt_gui_cpp
qt.shiboken: (typesystem) Unable to locate Clang's built-in include directory (neither by checking the environment variables LLVM_INSTALL_DIR, CLANG_INSTALL_DIR nor running llvm-config). This may lead to parse errors.
(typesystem) clang_parseTranslationUnit2(0x0, cmd[23]=-fPIC -Wno-constant-logical-operand -std=c++14 -I/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include -I/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include -I/usr/include -I/opt/ros/master/install/include -I/usr/include -I/opt/ros/master/install/include -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/usr/include/PySide2 -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 -I/usr/include/c++/9/backward -I/usr/local/include -I/usr/lib/llvm-10/lib/clang/10.0.0/include -I/usr/include/x86_64-linux-gnu -I/usr/include /tmp/global_NCfGOZ.hpp)
/usr/include/c++/9/atomic:1037:18: error: use of undeclared identifier 'uint8_t'
/usr/include/c++/9/atomic:1043:18: error: use of undeclared identifier 'uint16_t'
/usr/include/c++/9/atomic:1049:18: error: use of undeclared identifier 'uint32_t'
/usr/include/c++/9/atomic:1055:18: error: use of undeclared identifier 'uint64_t'
/usr/include/c++/9/atomic:1059:18: error: use of undeclared identifier 'int_least8_t'
/usr/include/c++/9/atomic:1062:18: error: use of undeclared identifier 'uint_least8_t'
/usr/include/c++/9/atomic:1065:18: error: use of undeclared identifier 'int_least16_t'
/usr/include/c++/9/atomic:1068:18: error: use of undeclared identifier 'uint_least16_t'
/usr/include/c++/9/atomic:1071:18: error: use of undeclared identifier 'int_least32_t'
/usr/include/c++/9/atomic:1074:18: error: use of undeclared identifier 'uint_least32_t'
/usr/include/c++/9/atomic:1077:18: error: use of undeclared identifier 'int_least64_t'
/usr/include/c++/9/atomic:1080:18: error: use of undeclared identifier 'uint_least64_t'
/usr/include/c++/9/atomic:1084:18: error: use of undeclared identifier 'int_fast8_t'
/usr/include/c++/9/atomic:1087:18: error: use of undeclared identifier 'uint_fast8_t'
/usr/include/c++/9/atomic:1090:18: error: use of undeclared identifier 'int_fast16_t'
/usr/include/c++/9/atomic:1093:18: error: use of undeclared identifier 'uint_fast16_t'
/usr/include/c++/9/atomic:1096:18: error: use of undeclared identifier 'int_fast32_t'
/usr/include/c++/9/atomic:1099:18: error: use of undeclared identifier 'uint_fast32_t'
/usr/include/c++/9/atomic:1102:18: error: use of undeclared identifier 'int_fast64_t'
fatal error: too many errors emitted, stopping now [-ferror-limit=]
(typesystem) Errors in /tmp/global_NCfGOZ.hpp:
/usr/include/c++/9/atomic:1037:18: error: use of undeclared identifier 'uint8_t'
/tmp/global_NCfGOZ.hpp:1:10: note: in file included from /tmp/global_NCfGOZ.hpp:1:
/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/src/qt_gui_cpp_shiboken/global.h:37:10: note: in file included from /opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/src/qt_gui_cpp_shiboken/global.h:37:
/usr/include/x86_64-linux-gnu/qt5/QtCore/QtCore:4:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/QtCore:4:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1210:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1210:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic.h:46:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic.h:46:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:53:12: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:53:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:45:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:45:
/usr/include/c++/9/atomic:1043:18: error: use of undeclared identifier 'uint16_t'
/usr/include/c++/9/atomic:1049:18: error: use of undeclared identifier 'uint32_t'
/usr/include/c++/9/atomic:1055:18: error: use of undeclared identifier 'uint64_t'
/usr/include/c++/9/atomic:1059:18: error: use of undeclared identifier 'int_least8_t'
/usr/include/c++/9/atomic:1062:18: error: use of undeclared identifier 'uint_least8_t'
/usr/include/c++/9/atomic:1065:18: error: use of undeclared identifier 'int_least16_t'
/usr/include/c++/9/atomic:1068:18: error: use of undeclared identifier 'uint_least16_t'
/usr/include/c++/9/atomic:1071:18: error: use of undeclared identifier 'int_least32_t'
/usr/include/c++/9/atomic:1074:18: error: use of undeclared identifier 'uint_least32_t'
/usr/include/c++/9/atomic:1077:18: error: use of undeclared identifier 'int_least64_t'
/usr/include/c++/9/atomic:1080:18: error: use of undeclared identifier 'uint_least64_t'
/usr/include/c++/9/atomic:1084:18: error: use of undeclared identifier 'int_fast8_t'
/usr/include/c++/9/atomic:1087:18: error: use of undeclared identifier 'uint_fast8_t'
/usr/include/c++/9/atomic:1090:18: error: use of undeclared identifier 'int_fast16_t'
/usr/include/c++/9/atomic:1093:18: error: use of undeclared identifier 'uint_fast16_t'
/usr/include/c++/9/atomic:1096:18: error: use of undeclared identifier 'int_fast32_t'
/usr/include/c++/9/atomic:1099:18: error: use of undeclared identifier 'uint_fast32_t'
/usr/include/c++/9/atomic:1102:18: error: use of undeclared identifier 'int_fast64_t'
:0: fatal: too many errors emitted, stopping now
(typesystem) Clang: 20 diagnostic messages:
/usr/include/c++/9/atomic:1037:18: error: use of undeclared identifier 'uint8_t'
/tmp/global_NCfGOZ.hpp:1:10: note: in file included from /tmp/global_NCfGOZ.hpp:1:
/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/src/qt_gui_cpp_shiboken/global.h:37:10: note: in file included from /opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/src/qt_gui_cpp_shiboken/global.h:37:
/usr/include/x86_64-linux-gnu/qt5/QtCore/QtCore:4:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/QtCore:4:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1210:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1210:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic.h:46:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic.h:46:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:53:12: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:53:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:45:10: note: in file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:45:
/usr/include/c++/9/atomic:1043:18: error: use of undeclared identifier 'uint16_t'
/usr/include/c++/9/atomic:1049:18: error: use of undeclared identifier 'uint32_t'
/usr/include/c++/9/atomic:1055:18: error: use of undeclared identifier 'uint64_t'
/usr/include/c++/9/atomic:1059:18: error: use of undeclared identifier 'int_least8_t'
/usr/include/c++/9/atomic:1062:18: error: use of undeclared identifier 'uint_least8_t'
/usr/include/c++/9/atomic:1065:18: error: use of undeclared identifier 'int_least16_t'
/usr/include/c++/9/atomic:1068:18: error: use of undeclared identifier 'uint_least16_t'
/usr/include/c++/9/atomic:1071:18: error: use of undeclared identifier 'int_least32_t'
/usr/include/c++/9/atomic:1074:18: error: use of undeclared identifier 'uint_least32_t'
/usr/include/c++/9/atomic:1077:18: error: use of undeclared identifier 'int_least64_t'
/usr/include/c++/9/atomic:1080:18: error: use of undeclared identifier 'uint_least64_t'
/usr/include/c++/9/atomic:1084:18: error: use of undeclared identifier 'int_fast8_t'
/usr/include/c++/9/atomic:1087:18: error: use of undeclared identifier 'uint_fast8_t'
/usr/include/c++/9/atomic:1090:18: error: use of undeclared identifier 'int_fast16_t'
/usr/include/c++/9/atomic:1093:18: error: use of undeclared identifier 'uint_fast16_t'
/usr/include/c++/9/atomic:1096:18: error: use of undeclared identifier 'int_fast32_t'
/usr/include/c++/9/atomic:1099:18: error: use of undeclared identifier 'uint_fast32_t'
/usr/include/c++/9/atomic:1102:18: error: use of undeclared identifier 'int_fast64_t'
:0: fatal: too many errors emitted, stopping now
Keeping temporary file: /tmp/global_NCfGOZ.hpp
shiboken: Error running ApiExtractor.
Command line: --generatorSet=shiboken --enable-pyside-extensions --include-paths=/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/src/qt_gui_cpp_shiboken/../../include:/opt/ros/master/src/ros-visualization/qt_gui_core/qt_gui_cpp/include:/usr/include:/opt/ros/master/install/include:/usr/include:/opt/ros/master/install/include:/usr/include/x86_64-linux-gnu/qt5/:/usr/include/x86_64-linux-gnu/qt5/QtWidgets:/usr/include/x86_64-linux-gnu/qt5/QtGui:/usr/include/x86_64-linux-gnu/qt5/QtCore:/usr/lib/x86_64-linux-gnu/qt5//mkspecs/linux-g++:/usr/lib/../include/PySide2:/usr/include/c++/9:/usr/include/x86_64-linux-gnu/c++/9:/usr/include/c++/9/backward:/usr/local/include:/usr/lib/llvm-10/lib/clang/10.0.0/include:/usr/include/x86_64-linux-gnu:/usr/include --typesystem-paths=/usr/share/PySide2/typesystems --output-directory=/opt/ros/master/build/qt_gui_cpp/src/qt_gui_cpp_shiboken global.h typesystem.xml
make[2]: *** [src/qt_gui_cpp_shiboken/CMakeFiles/qt_gui_cpp_shiboken.dir/build.make:75: src/qt_gui_cpp_shiboken/libqt_gui_cpp_shiboken/libqt_gui_cpp_shiboken_module_wrapper.cpp] Error 1
make[1]: *** [CMakeFiles/Makefile2:180: src/qt_gui_cpp_shiboken/CMakeFiles/qt_gui_cpp_shiboken.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
make: *** [Makefile:141: all] Error 2
---