Hi Ben,
On 26.02.2018 22:19, Nobody III wrote:
> I've been trying to port various Qt apps, including qt5ct, and I've run
> into errors such as "error: ‘QProcessEnvironment’ was not declared in this
> scope". I get that QProcess doesn't work on Genode, given its lack of
> fork() support outside noux, but why won't anything using QProcess or
> QProcessEnvironment compile, and how do I fix this?
QProcess support is currently disabled in the Qt configuration. You
could try it with the attached patches (one for the Genode tree and one
for the Qt contrib directory).
Regards,
Christian
qprocess_genode.patch
From: Christian Prochaska <christian.procha...@genode-labs.com>
---
repos/libports/lib/mk/qt5_core.mk | 2 --
1 file changed, 2 deletions(-)
diff --git a/repos/libports/lib/mk/qt5_core.mk b/repos/libports/lib/mk/qt5_core.mk
index 8ead924..1fd61a8 100644
--- a/repos/libports/lib/mk/qt5_core.mk
+++ b/repos/libports/lib/mk/qt5_core.mk
@@ -12,7 +12,6 @@ QT_SOURCES += qthread_genode.cpp
# remove unsupported UNIX-specific files
QT_SOURCES_FILTER_OUT = \
- forkfd_qt.cpp \
moc_qfilesystemwatcher_inotify_p.cpp \
qfilesystemwatcher_inotify.cpp \
qthread_unix.cpp
@@ -20,7 +19,6 @@ QT_SOURCES_FILTER_OUT = \
# remove unneeded files to prevent moc warnings
COMPILER_MOC_HEADER_MAKE_ALL_FILES_FILTER_OUT = \
moc_qobjectdefs.cpp \
- moc_qprocess.cpp \
moc_qsharedmemory.cpp
include $(REP_DIR)/lib/mk/qt5.inc
qprocess_contrib.patch
From: Christian Prochaska <christian.procha...@genode-labs.com>
---
qtbase/src/3rdparty/forkfd/forkfd.c | 4 ++--
qtbase/src/corelib/qtcore-config.h | 3 +--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/qtbase/src/3rdparty/forkfd/forkfd.c b/qtbase/src/3rdparty/forkfd/forkfd.c
index e57d9aa..b89bf23 100644
--- a/qtbase/src/3rdparty/forkfd/forkfd.c
+++ b/qtbase/src/3rdparty/forkfd/forkfd.c
@@ -73,8 +73,8 @@
(defined(__NetBSD__) && __NetBSD_Version__ >= 600000000)
# define HAVE_PIPE2 1
#endif
-#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__) || \
- defined(__OpenBSD__) || defined(__NetBSD__) || defined(__APPLE__)
+#if (defined(__FreeBSD__) || defined(__DragonFly__) || defined(__FreeBSD_kernel__) || \
+ defined(__OpenBSD__) || defined(__NetBSD__) || defined(__APPLE__)) && !defined(__GENODE__)
# define HAVE_WAIT4 1
#endif
diff --git a/qtbase/src/corelib/qtcore-config.h b/qtbase/src/corelib/qtcore-config.h
index 9fda215..16a3746 100644
--- a/qtbase/src/corelib/qtcore-config.h
+++ b/qtbase/src/corelib/qtcore-config.h
@@ -18,8 +18,7 @@
#define QT_NO_INOTIFY
#define QT_FEATURE_library 1
#define QT_FEATURE_mimetype 1
-#define QT_FEATURE_process -1
-#define QT_NO_PROCESS
+#define QT_FEATURE_process 1
#define QT_FEATURE_statemachine 1
#define QT_FEATURE_qeventtransition 1
#define QT_FEATURE_regularexpression 1
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main