Keyboard layout switching in Qt, not just in Qt for embedded Linux
-
Seems like my last answer disappeared, did you got it ?
-
The question was: what will you be using (software speaking) to draw the video and the Qt GUI ? Linux frame buffer ? Also what distribution will be running on the device ?
-
Then if you don't have any graphic server/window manager and are using the linux frame buffer then you have to use Qt for Embedded Linux. Or there's something I'm missing
-
Before that, can you tell me what software setup you had planned ?
-
Simple what are the software architecture you want to use. Until now you wrote that your were using a self-built distribution with a custom kernel and not wanted to use Qt Embedded, but don't have any window manager nor graphic server.
So what would your software stack be ?
-
So all in all quick version: -> kernel -> busybox -> Qt Application ?
-
Well, then Qt for Embedded Linux is the only option. Why did you want to use it in the first place ?
-
Ok, we'll try that.
Assuming you were asking: "Why did you not want to use it in the first place ?"
Well, the project has been running for a few years now, requirements kept changing and keyboard layout switching was added to the specification just recently.I have a question about the tutorial on http://doc.qt.digia.com/4.6/qt-embedded-install.html:
How do I switch between my two Qt versions? I use Qt Simulator for simulations and when compiling our stuff on the hardware, we use a makefile without QtCreator. Do I only have to change $PATH?
If possible I'd like to keep the code working for both versions by using a #compileflag -
Indeed, the was a word missing :D
Just create one kit for each Qt version and use both for you project, then you can switch at will from Qt Creator
-
Ok, but how? Is it enough to choose the corresponding qmake in the "Build Settings/General/Qt Version/Manage"? Qt Simulator doesn't allow me to change that one.
And if I run a shell-script to compile everything together for the hardware, how does the system know which Qt to use if I change it only in QtCreator?
-
Wait, Qt Simulator ? The one from the Nokia time ?
-
Yes, that one, but I can compile it in Desktop mode, too, if I have to. Qt simulator has the advantage of not being fullscreen (because it provides its own virtual screen), so I've used it until now. Though I don't mind abandoning it if it means getting those accursed keyboard layouts to work.
But just switching qmake doesn't make a difference. I followed the tutorial on http://doc.qt.digia.com/4.6/qt-embedded-install.html (but didn't setup the virtual frame buffer), so I'd expect that at least "QKbdDriverFactory::create" shouldn't be an undefined reference anymore. I know that I still need to do some other things to get it to run, like finding out where the QApplication object is that needs to be constructed with the QApplication::GuiServer type, but that shouldn't matter for the compiler, right?
-
Indeed.
What I do when I have to develop for embedded is to build an embedded version for x86 that uses QVFB so I have the same set of libraries than the version from my target.