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. Problem compiling kmap2gmap for Qt4.8.5 embedded linux version
Forum Update on Monday, May 27th 2025

Problem compiling kmap2gmap for Qt4.8.5 embedded linux version

Scheduled Pinned Locked Moved Solved Mobile and Embedded
7 Posts 3 Posters 487 Views
  • 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.
  • T Offline
    T Offline
    TheCrowKaka
    wrote on 21 Mar 2022, 08:44 last edited by
    #1

    Hello,
    I know that this topic is quite old, but I am required to make modifications to a program that works on a certain ARM board. The program is compiled in Qt4.8.5 and now there is a requirement of using multi-lingual usb keyboards.
    I have been studying different links that are available in this Forum as well as on other links.
    I have gathered the kmap files, the kmap2gmap from the qt4.8.5 sources, managed to compile it and get an executable.
    The problem is in executing this executable file.
    As I understand, i need to run this executable on the ARM board and that is what i am unable to do.
    I am not an expert in the linux domain.
    We have created our application folder on the root and our main program to be run is placed in this folder and run with ./mainprog -qws
    I dont know how to run this kmap2gmap and convert the kmap file to gmap file.
    I tried placing all these files in the application folder and run the kmap2qmap application but i get "Permission Denied" error.
    I have tried changing the location of this application and the kmap file to other locations and tried running this application over the serial debug console, but still get the Permission Denied error. I tried using chmod using the serial debug console to change permissions but even chmod returns "Permission Denied".

    A Qt Enthusiastic...

    J 1 Reply Last reply 21 Mar 2022, 08:48
    0
    • T TheCrowKaka
      21 Mar 2022, 08:44

      Hello,
      I know that this topic is quite old, but I am required to make modifications to a program that works on a certain ARM board. The program is compiled in Qt4.8.5 and now there is a requirement of using multi-lingual usb keyboards.
      I have been studying different links that are available in this Forum as well as on other links.
      I have gathered the kmap files, the kmap2gmap from the qt4.8.5 sources, managed to compile it and get an executable.
      The problem is in executing this executable file.
      As I understand, i need to run this executable on the ARM board and that is what i am unable to do.
      I am not an expert in the linux domain.
      We have created our application folder on the root and our main program to be run is placed in this folder and run with ./mainprog -qws
      I dont know how to run this kmap2gmap and convert the kmap file to gmap file.
      I tried placing all these files in the application folder and run the kmap2qmap application but i get "Permission Denied" error.
      I have tried changing the location of this application and the kmap file to other locations and tried running this application over the serial debug console, but still get the Permission Denied error. I tried using chmod using the serial debug console to change permissions but even chmod returns "Permission Denied".

      J Offline
      J Offline
      jsulm
      Lifetime Qt Champion
      wrote on 21 Mar 2022, 08:48 last edited by
      #2

      @TheCrowKaka said in Problem compiling kmap2gmap for Qt4.8.5 embedded linux version:

      i need to run this executable on the ARM board and that is what i am unable to do

      Did you build it for ARM?

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • T Offline
        T Offline
        TheCrowKaka
        wrote on 21 Mar 2022, 08:56 last edited by
        #3

        Hello @jsulm

        Yes, I got it from qt-everywhere-opensource-src-4.8.5.tar.bz2 which is the Qt version compiled for the Arm board.

        I managed to compile the kmap2qmap using the same compiler.

        A Qt Enthusiastic...

        1 Reply Last reply
        0
        • S Offline
          S Offline
          SGaist
          Lifetime Qt Champion
          wrote on 21 Mar 2022, 19:54 last edited by
          #4

          Hi,

          If memory serves well, you do not need to run that tool on the target. Get the files needed, do the file generation on your desktop and then copy them to your target.

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

          T 1 Reply Last reply 23 Mar 2022, 05:18
          0
          • S SGaist
            21 Mar 2022, 19:54

            Hi,

            If memory serves well, you do not need to run that tool on the target. Get the files needed, do the file generation on your desktop and then copy them to your target.

            T Offline
            T Offline
            TheCrowKaka
            wrote on 23 Mar 2022, 05:18 last edited by
            #5

            @SGaist You are right. Even I expected that the executable to run on the PC convert the file from kmap to qmap and then use the qmap file on the target device.

            When i compile and try to run the executable kmap2qmap on the PC, i get "Cannot execute binary file" error. I get that same error for all the other tools compiled from the tools folder.

            Secondly, i use that version Qt4.8.5 for compiling my application binary and run that executable on the target device which runs fine. Hence I thought that maybe, we have to run the kmap2qmap also on the target device.

            Somehow, i think, i am not doing the compilation of the kmap2qmap program properly. I just used the ./configure command to cross compile Qt4.8.5 for the arm and ensure that the tools folder is also compiled. That compiled the tools for me.
            Is there any other way to do that?

            A Qt Enthusiastic...

            1 Reply Last reply
            0
            • S Offline
              S Offline
              SGaist
              Lifetime Qt Champion
              wrote on 23 Mar 2022, 07:23 last edited by
              #6

              You should build it with your desktop Qt version in order to be able to run it on that machine.
              If you use your cross-compiled Qt, you will have a binary for your target.
              Depending on your distribution, you should still have Qt 4 available as system packages. So you can use that one.

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

              T 1 Reply Last reply 24 Mar 2022, 14:59
              1
              • S SGaist
                23 Mar 2022, 07:23

                You should build it with your desktop Qt version in order to be able to run it on that machine.
                If you use your cross-compiled Qt, you will have a binary for your target.
                Depending on your distribution, you should still have Qt 4 available as system packages. So you can use that one.

                T Offline
                T Offline
                TheCrowKaka
                wrote on 24 Mar 2022, 14:59 last edited by
                #7

                @SGaist Finally, your solution worked.
                I recompiled Qt to work on linux desktop and then compiled the kmap2qmap. Used that to convert the kmap files to qmap and then used them.
                This is how i used it...

                QWSServer::instance()->closeKeyboard();
                QWSKeyboardHandler * currentKeyboardHandler = QKbdDriverFactory::create("TTY", keymapfile);
                QWSServer::instance()->setKeyboardHandler(currentKeyboardHandler);
                
                

                Where the keymapfile="keymap=/home/keymaps/qwerty/es.qmap"

                Lastly, now the only thing left is the authenticity of the kmap files that i got from some github site. What is the right location to get these kmap files where I could also get the right description of each kmap file... the file itself contains some description but not all files has description.

                A Qt Enthusiastic...

                1 Reply Last reply
                0

                1/7

                21 Mar 2022, 08:44

                • Login

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