Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Keyboard layout switching in Qt, not just in Qt for embedded Linux
Forum Updated to NodeBB v4.3 + New Features

Keyboard layout switching in Qt, not just in Qt for embedded Linux

Scheduled Pinned Locked Moved Mobile and Embedded
38 Posts 2 Posters 12.3k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #13

    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

    Interested in AI ? www.idiap.ch
    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

    1 Reply Last reply
    0
    • _ Offline
      _ Offline
      __Alex__
      wrote on last edited by
      #14

      Ok, too bad. I guess we'll have to try to switch our Qt version after all.

      Thanks for the help!

      1 Reply Last reply
      0
      • SGaistS Offline
        SGaistS Offline
        SGaist
        Lifetime Qt Champion
        wrote on last edited by
        #15

        Before that, can you tell me what software setup you had planned ?

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        1 Reply Last reply
        0
        • _ Offline
          _ Offline
          __Alex__
          wrote on last edited by
          #16

          Can you elaborate on what you mean exactly?

          1 Reply Last reply
          0
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #17

            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 ?

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • _ Offline
              _ Offline
              __Alex__
              wrote on last edited by
              #18

              I don't know the exact software stack, but our Atmel board has frame buffer support and that's what we use for the graphics.

              1 Reply Last reply
              0
              • SGaistS Offline
                SGaistS Offline
                SGaist
                Lifetime Qt Champion
                wrote on last edited by
                #19

                So all in all quick version: -> kernel -> busybox -> Qt Application ?

                Interested in AI ? www.idiap.ch
                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 Reply Last reply
                0
                • _ Offline
                  _ Offline
                  __Alex__
                  wrote on last edited by
                  #20

                  Yes, that's right.

                  1 Reply Last reply
                  0
                  • SGaistS Offline
                    SGaistS Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on last edited by
                    #21

                    Well, then Qt for Embedded Linux is the only option. Why did you want to use it in the first place ?

                    Interested in AI ? www.idiap.ch
                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                    1 Reply Last reply
                    0
                    • _ Offline
                      _ Offline
                      __Alex__
                      wrote on last edited by
                      #22

                      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

                      1 Reply Last reply
                      0
                      • SGaistS Offline
                        SGaistS Offline
                        SGaist
                        Lifetime Qt Champion
                        wrote on last edited by
                        #23

                        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

                        Interested in AI ? www.idiap.ch
                        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                        1 Reply Last reply
                        0
                        • _ Offline
                          _ Offline
                          __Alex__
                          wrote on last edited by
                          #24

                          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?

                          1 Reply Last reply
                          0
                          • SGaistS Offline
                            SGaistS Offline
                            SGaist
                            Lifetime Qt Champion
                            wrote on last edited by
                            #25

                            Wait, Qt Simulator ? The one from the Nokia time ?

                            Interested in AI ? www.idiap.ch
                            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                            1 Reply Last reply
                            0
                            • _ Offline
                              _ Offline
                              __Alex__
                              wrote on last edited by
                              #26

                              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?

                              1 Reply Last reply
                              0
                              • SGaistS Offline
                                SGaistS Offline
                                SGaist
                                Lifetime Qt Champion
                                wrote on last edited by
                                #27

                                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.

                                Interested in AI ? www.idiap.ch
                                Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                1 Reply Last reply
                                0
                                • _ Offline
                                  _ Offline
                                  __Alex__
                                  wrote on last edited by
                                  #28

                                  But even if I don't have the virtual frame buffer, the compiler should compile everything. But still the factory can't be found.

                                  Do I really only need to switch the qmake in the project settings?

                                  1 Reply Last reply
                                  0
                                  • SGaistS Offline
                                    SGaistS Offline
                                    SGaist
                                    Lifetime Qt Champion
                                    wrote on last edited by
                                    #29

                                    Are you sure you are doing an x86 embedded build ?

                                    If you are using Qt Creator, just switch from one kit to another one. Or if from the command line, use the correct qmake version.

                                    Interested in AI ? www.idiap.ch
                                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                    1 Reply Last reply
                                    0
                                    • _ Offline
                                      _ Offline
                                      __Alex__
                                      wrote on last edited by
                                      #30

                                      I am not sure, that's why I'm asking if switching the qmake is enough or if more things are needed to make QtCreator use the other kit.

                                      1 Reply Last reply
                                      0
                                      • _ Offline
                                        _ Offline
                                        __Alex__
                                        wrote on last edited by
                                        #31

                                        I am going to be on holidays for the next 3 weeks. Thanks for the help so far!

                                        Afterwards I will probably try to setup a new VM, install only Qt for Embedded Linux and see if it works better.

                                        1 Reply Last reply
                                        0
                                        • SGaistS Offline
                                          SGaistS Offline
                                          SGaist
                                          Lifetime Qt Champion
                                          wrote on last edited by
                                          #32

                                          The simplest way on the command line is to give the full path to the qmake corresponding to which version of Qt you want to compile with.

                                          On Qt Creator, you have to check your kits.

                                          Have a nice time

                                          Interested in AI ? www.idiap.ch
                                          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved