[Development] Porting QT to new OS

martin ribelotta martinribelotta at gmail.com
Thu Nov 7 05:41:10 CET 2019


Hi guys, I'm evaluate, for a client, the cost of port Qt to a bare
metal RTOS with minimal (realy minimal) requirements like freeRTOS,
mbedos etc (no mmu, no mmap, no filesystem, etc)
What is the minimal requirement to run Qt in a really minimal
platform? (for now, qt in my words is understand as corelib, gui and
widget in the minimal expression)

This question is in the air time to time but the information is very
disperse and not so convincent for me.

Actually in my understand, Qt need:

1) POSIX compliant base (pthreads? mmap? fork?)

I can disable parts individually or need some kind of #ifdef sparse by the code?
I see some kind of preprocessor magic scattered in the code like this:
https://github.com/qt/qtbase/blob/4b0af2cdbf61572b22ea6b8aa17fc9f52c71ac4b/src/corelib/thread/qthread.cpp#L174

2) QPA plugin

Minimal is a good start point? I only have a framebuffer in memory
directly accessable for the CPU and vsync interrupt (with manual page
flipping)

3) Support for atomics in target architecture?

In my case maybe it wouldn't be a problem, the target is ARMv7 in thumb2 mode

4) What about the memory footprint?

What are the hot spots of qtcore in consumption?

I'm followin the Qt for MCU project with great interest but in this
moment, my clients are looking for something really minimal like
freeRTOS, and my intention is to evaluate the work for port Qt to
this.

Intuitively, it seems that port qt to a non-posix system can be a
titanic task, but at least I want to evaluate the manpower for this.


More information about the Development mailing list