Details
-
Bug
-
Resolution: Fixed
-
P3: Somewhat important
-
6.7.0
-
None
-
-
a4c663507 (dev)
Description
Build on Solaris fails with:
[528/2718] Building CXX object qtbase/src/corelib/CMakeFiles/Core.dir/io/qprocess_unix.cpp.o
FAILED: qtbase/src/corelib/CMakeFiles/Core.dir/io/qprocess_unix.cpp.o
/usr/gcc/13/bin/g++ -DBACKTRACE_HEADER=\"execinfo.h\" -DCore_EXPORTS -DQMAKE_CC=/usr/gcc/13/bin/gcc -DQMAKE_CXX=/usr/gcc/13/bin/g++ -DQMAKE_LINK=/usr/gcc/13/bin/g++ -DQT_ASCII_CAST_WARNINGS -DQT_BUILDING_QT -DQT_BUILD_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_UP_TO=0x050000 -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_LEAN_HEADERS=1 -DQT_MOC_COMPAT -DQT_NO_AS_CONST -DQT_NO_CAST_TO_ASCII -DQT_NO_CONTEXTLESS_CONNECT -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_QEXCHANGE -DQT_NO_QPAIR -DQT_NO_USING_NAMESPACE -DQT_NO_VERSION_TAGGING -DQT_TYPESAFE_FLAGS -DQT_USE_QSTRINGBUILDER -DQT_WARN_DEPRECATED_UP_TO=0x070000 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/src/corelib/Core_autogen/include -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/include -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/include/QtCore -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/src/corelib -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/src/corelib/global -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/src/corelib/kernel -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/../3rdparty/tinycbor/src -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/include/QtCore/6.7.0 -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/include/QtCore/6.7.0/QtCore -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/../3rdparty/double-conversion/double-conversion -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/../3rdparty/double-conversion -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/../3rdparty/forkfd -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/build/amd64/qtbase/src/corelib/.rcc -I/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/mkspecs/solaris-g+-64 -isystem /usr/include/pcre -isystem /usr/include/glib-2.0 -isystem /usr/lib/amd64/glib-2.0/include -m64 -O3 -ffile-prefix-map=/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6=. -fPIC -DPIC -DNDEBUG -O3 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wextra -fexceptions -Wsuggest-override -std=c+17 -MD -MT qtbase/src/corelib/CMakeFiles/Core.dir/io/qprocess_unix.cpp.o -MF qtbase/src/corelib/CMakeFiles/Core.dir/io/qprocess_unix.cpp.o.d -o qtbase/src/corelib/CMakeFiles/Core.dir/io/qprocess_unix.cpp.o -c /builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/io/qprocess_unix.cpp
/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/io/qprocess_unix.cpp: In function 'const char* applyProcessParameters(const QProcess::UnixProcessParameters&)':
/builds/psumbera/userland-qt-6.7.0/components/desktop/qt6/qt-everywhere-src-6.7.0/qtbase/src/corelib/io/qprocess_unix.cpp:860:31: error: 'TIOCNOTTY' was not declared in this scope
860 | int r = ioctl(fd, TIOCNOTTY);
| ^~~~~~~~~
–
Following change resolves the issue:
— qt-everywhere-src-6.7.0/qtbase/src/corelib/io/qprocess_unix.cpp
+++ qt-everywhere-src-6.7.0/qtbase/src/corelib/io/qprocess_unix.cpp
@@ -32,6 +32,10 @@
# include <sys/neutrino.h>
#endif
+#ifdef Q_OS_SOLARIS
+# include <sys/termios.h>
+#endif
+
#include <errno.h>
#include <limits.h>
#include <stdlib.h>