Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Example of Virtual Keyboard showing in different languages
Forum Updated to NodeBB v4.3 + New Features

Example of Virtual Keyboard showing in different languages

Scheduled Pinned Locked Moved Unsolved General and Desktop
55 Posts 7 Posters 27.9k Views 5 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
    #38

    I think they should be the same but can you just check that g++ is the same version as gcc ?

    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
    • Pradeep KumarP Offline
      Pradeep KumarP Offline
      Pradeep Kumar
      wrote on last edited by
      #39

      Hi,

      Both are same versions.

      4.8.4-2ubuntu1~14.04.3

      Thanks,

      Pradeep Kumar
      Qt,QML Developer

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

        From the supported platform 5.9 is at Ubuntu 16.04. You're version of g++ is a bit outdated in that regards so you'll have to modify the mkspec a bit to remove the date-time warning as well as change the c++1z with something a little older like c++14.

        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
        • Pradeep KumarP Offline
          Pradeep KumarP Offline
          Pradeep Kumar
          wrote on last edited by
          #41

          Hi,

          I have updated g++,

          gcc version 5.4.1 20160904 (Ubuntu 5.4.1-2ubuntu1~14.04)
          gcc version 5.4.1 20160904 (Ubuntu 5.4.1-2ubuntu1~14.04)

          gcc is same as g++,

          still i am unable to achieve it.

          1. i used qmake
            -Inspiron-3558:~/Qt5.8.0/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard$ /home/user/Qt5.8.0/5.8/gcc_64/bin/qmake

          2. then used make

          -Inspiron-3558:~/Qt5.8.0/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard$ make
          rm -f libqtvirtualkeyboardplugin.so
          g++ -Wl,--no-undefined -Wl,-O1 -Wl,--enable-new-dtags -Wl,-z,origin -Wl,-rpath,$ORIGIN/../../lib -Wl,-rpath,$ORIGIN/../../lib -shared -o libqtvirtualkeyboardplugin.so .obj/platforminputcontext.o .obj/inputcontext.o .obj/abstractinputmethod.o .obj/plaininputmethod.o .obj/inputengine.o .obj/shifthandler.o .obj/plugin.o .obj/inputmethod.o .obj/selectionlistmodel.o .obj/defaultinputmethod.o .obj/abstractinputpanel.o .obj/enterkeyaction.o .obj/enterkeyactionattachedtype.o .obj/settings.o .obj/virtualkeyboardsettings.o .obj/trace.o .obj/desktopinputpanel.o .obj/inputview.o .obj/appinputpanel.o .obj/qrc_default_style.o .obj/qrc_retro_style.o .obj/qrc_content.o .obj/qrc_layouts.o .obj/moc_platforminputcontext.o .obj/moc_inputcontext.o .obj/moc_abstractinputmethod.o .obj/moc_plaininputmethod.o .obj/moc_inputengine.o .obj/moc_shifthandler.o .obj/moc_inputmethod.o .obj/moc_selectionlistmodel.o .obj/moc_defaultinputmethod.o .obj/moc_abstractinputpanel.o .obj/moc_enterkeyaction.o .obj/moc_enterkeyactionattachedtype.o .obj/moc_settings.o .obj/moc_virtualkeyboardsettings.o .obj/moc_plugin.o .obj/moc_trace.o .obj/moc_desktopinputpanel.o .obj/moc_inputview.o .obj/moc_appinputpanel.o -lxcb-xfixes -lxcb-render -lxcb-shape -lxcb -L/home/dheerendra/Qt5.8.0/5.8/gcc_64/lib -lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Core -lGL -lpthread
          /usr/bin/ld: .obj/platforminputcontext.o: Relocations in generic ELF (EM: 40)
          .obj/platforminputcontext.o: error adding symbols: File in wrong format
          collect2: error: ld returned 1 exit status
          make: *** [../../plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so] Error 1

          I am getting the above errors, can u help me out,

          Please provide guidance,

          Thanks,

          Pradeep Kumar
          Qt,QML Developer

          jsulmJ 1 Reply Last reply
          0
          • Pradeep KumarP Offline
            Pradeep KumarP Offline
            Pradeep Kumar
            wrote on last edited by
            #42

            HI,

            I installed latest g++ and gcc versions and

            1. used qmake.
            2. then make clean.
            3. then make.
            4. make install.

            Then ran the basic program which is present in the path
            /home/user/Qt5.8.0/5.8/Src/qtvirtualkeyboard/examples/virtualkeyboard/basic

            I am getting virtual keyboard in ubuntu,
            Thanks for the solutions and help,

            But when i change the language present in the path,
            /home/user/Qt5.8.0/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard

            as CONFIG += lang-ar_AR in the virtualkeyboard.pro file,

            then again followed the steps to compile the plugin,
            but when i ran the basic program to launch virtual keyboard, i am not getting the button enabled, to select the language,

            Please provide the guidance,

            Thanks,

            Pradeep Kumar
            Qt,QML Developer

            1 Reply Last reply
            0
            • Pradeep KumarP Pradeep Kumar

              Hi,

              I have updated g++,

              gcc version 5.4.1 20160904 (Ubuntu 5.4.1-2ubuntu1~14.04)
              gcc version 5.4.1 20160904 (Ubuntu 5.4.1-2ubuntu1~14.04)

              gcc is same as g++,

              still i am unable to achieve it.

              1. i used qmake
                -Inspiron-3558:~/Qt5.8.0/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard$ /home/user/Qt5.8.0/5.8/gcc_64/bin/qmake

              2. then used make

              -Inspiron-3558:~/Qt5.8.0/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard$ make
              rm -f libqtvirtualkeyboardplugin.so
              g++ -Wl,--no-undefined -Wl,-O1 -Wl,--enable-new-dtags -Wl,-z,origin -Wl,-rpath,$ORIGIN/../../lib -Wl,-rpath,$ORIGIN/../../lib -shared -o libqtvirtualkeyboardplugin.so .obj/platforminputcontext.o .obj/inputcontext.o .obj/abstractinputmethod.o .obj/plaininputmethod.o .obj/inputengine.o .obj/shifthandler.o .obj/plugin.o .obj/inputmethod.o .obj/selectionlistmodel.o .obj/defaultinputmethod.o .obj/abstractinputpanel.o .obj/enterkeyaction.o .obj/enterkeyactionattachedtype.o .obj/settings.o .obj/virtualkeyboardsettings.o .obj/trace.o .obj/desktopinputpanel.o .obj/inputview.o .obj/appinputpanel.o .obj/qrc_default_style.o .obj/qrc_retro_style.o .obj/qrc_content.o .obj/qrc_layouts.o .obj/moc_platforminputcontext.o .obj/moc_inputcontext.o .obj/moc_abstractinputmethod.o .obj/moc_plaininputmethod.o .obj/moc_inputengine.o .obj/moc_shifthandler.o .obj/moc_inputmethod.o .obj/moc_selectionlistmodel.o .obj/moc_defaultinputmethod.o .obj/moc_abstractinputpanel.o .obj/moc_enterkeyaction.o .obj/moc_enterkeyactionattachedtype.o .obj/moc_settings.o .obj/moc_virtualkeyboardsettings.o .obj/moc_plugin.o .obj/moc_trace.o .obj/moc_desktopinputpanel.o .obj/moc_inputview.o .obj/moc_appinputpanel.o -lxcb-xfixes -lxcb-render -lxcb-shape -lxcb -L/home/dheerendra/Qt5.8.0/5.8/gcc_64/lib -lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Core -lGL -lpthread
              /usr/bin/ld: .obj/platforminputcontext.o: Relocations in generic ELF (EM: 40)
              .obj/platforminputcontext.o: error adding symbols: File in wrong format
              collect2: error: ld returned 1 exit status
              make: *** [../../plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so] Error 1

              I am getting the above errors, can u help me out,

              Please provide guidance,

              Thanks,

              jsulmJ Offline
              jsulmJ Offline
              jsulm
              Lifetime Qt Champion
              wrote on last edited by
              #43

              @Pradeep-Kumar said in Example of Virtual Keyboard showing in different languages:

              .obj/platforminputcontext.o: error adding symbols: File in wrong format

              you should do it from a clean state - looks like you have binaries built with the old compiler.

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

              1 Reply Last reply
              0
              • Pradeep KumarP Offline
                Pradeep KumarP Offline
                Pradeep Kumar
                wrote on last edited by
                #44

                Yes @jsulm i got that point made a clean then built it i got the virtual keyboard, but i am not getting for different languages, tats y i posted in earlier post.

                Thanks,

                Pradeep Kumar
                Qt,QML Developer

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

                  AFAICS you are setting only one language when building the module. You should list all the languages you want to support.

                  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
                  • Pradeep KumarP Offline
                    Pradeep KumarP Offline
                    Pradeep Kumar
                    wrote on last edited by Pradeep Kumar
                    #46

                    nope still the same, i provided 4 languages in .pro file,

                    still the same issue.

                    when i run make install

                    -Inspiron-3558:~/Qt5.8.0/5.8/Src/qtvirtualkeyboard/src/virtualkeyboard$ make install
                    install -m 755 -p ../../plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so /home/user/Qt5.8.0/5.8/gcc_64/plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so
                    strip --strip-unneeded /home/dheerendra/Qt5.8.0/5.8/gcc_64/plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so
                    install -m 644 -p /home/user/Qt5.8.0/5.8/Src/qtvirtualkeyboard/lib/cmake/Qt5Gui/Qt5Gui_QVirtualKeyboardPlugin.cmake /home/dheerendra/Qt5.8.0/5.8/gcc_64/lib/cmake/Qt5Gui/

                    after this i run sample program.

                    Thanks,

                    Pradeep Kumar
                    Qt,QML Developer

                    1 Reply Last reply
                    0
                    • mrdebugM Offline
                      mrdebugM Offline
                      mrdebug
                      wrote on last edited by
                      #47

                      The Qt open source package contains the qtvirtualkeyboard component.
                      I can build it without anu problem but I can't add the flag lang-all.
                      Insert CONFIG += lang-all in .pro file has no effect.

                      Need programmers to hire?
                      www.labcsp.com
                      www.denisgottardello.it
                      GMT+1
                      Skype: mrdebug

                      1 Reply Last reply
                      0
                      • Pradeep KumarP Offline
                        Pradeep KumarP Offline
                        Pradeep Kumar
                        wrote on last edited by
                        #48

                        Hello,

                        now i am facing one more issue, when i try to compile the program using Qt creator,
                        getting the below mentioned errors,

                        home/user/Qt5.8.0/5.8/gcc_64/mkspecs/features/qt_plugin.prf:52: Cannot write file /mkspecs/modules-inst/qt_plugin_qtvirtualkeyboardplugin.pri: Cannot create parent directory
                        17:58:18: The process "/home/user/Qt5.8.0/5.8/gcc_64/bin/qmake" exited with code 3.
                        Error while building/deploying project virtualkeyboard (kit: Desktop Qt 5.8.0 GCC 64bit)
                        The kit Desktop Qt 5.8.0 GCC 64bit has configuration issues which might be the root cause for this problem.
                        When executing step "qmake".

                        But the kit is configured and rest of the programs are running, only the virtualkeyboard program is giving me this error...

                        Guidance is required,

                        Thanks,

                        Pradeep Kumar
                        Qt,QML Developer

                        jsulmJ 1 Reply Last reply
                        0
                        • Pradeep KumarP Pradeep Kumar

                          Hello,

                          now i am facing one more issue, when i try to compile the program using Qt creator,
                          getting the below mentioned errors,

                          home/user/Qt5.8.0/5.8/gcc_64/mkspecs/features/qt_plugin.prf:52: Cannot write file /mkspecs/modules-inst/qt_plugin_qtvirtualkeyboardplugin.pri: Cannot create parent directory
                          17:58:18: The process "/home/user/Qt5.8.0/5.8/gcc_64/bin/qmake" exited with code 3.
                          Error while building/deploying project virtualkeyboard (kit: Desktop Qt 5.8.0 GCC 64bit)
                          The kit Desktop Qt 5.8.0 GCC 64bit has configuration issues which might be the root cause for this problem.
                          When executing step "qmake".

                          But the kit is configured and rest of the programs are running, only the virtualkeyboard program is giving me this error...

                          Guidance is required,

                          Thanks,

                          jsulmJ Offline
                          jsulmJ Offline
                          jsulm
                          Lifetime Qt Champion
                          wrote on last edited by
                          #49

                          @Pradeep-Kumar said in Example of Virtual Keyboard showing in different languages:

                          Cannot write file /mkspecs/modules-inst/qt_plugin_qtvirtualkeyboardplugin.pri

                          Are you really trying to write to /mkspects ? This would be a subdirectory of the root directory where a normal user has no write access. Does this directory even exist?

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

                          1 Reply Last reply
                          0
                          • Pradeep KumarP Offline
                            Pradeep KumarP Offline
                            Pradeep Kumar
                            wrote on last edited by
                            #50

                            Nope i dnt know regarding that as i was trying to compile the qtvirtualkeyboard program in ubuntu, i am getting the error, but i didnt find the compiling error in windows, strange.

                            is their any other configuration to be done.

                            Thanks,

                            Pradeep Kumar
                            Qt,QML Developer

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

                              Can you show your .pro file ?

                              Again, did you start using out of source builds ?
                              Between two tries, did you nuke the build folder ? If so, how did you nuke it ?

                              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
                              • Pradeep KumarP Offline
                                Pradeep KumarP Offline
                                Pradeep Kumar
                                wrote on last edited by Pradeep Kumar
                                #52

                                Hello,

                                pro file qt virtual keyboard,

                                TARGET  = qtvirtualkeyboardplugin
                                DATAPATH = $$[QT_INSTALL_DATA]/qtvirtualkeyboard
                                
                                QMAKE_DOCS = $$PWD/doc/qtvirtualkeyboard.qdocconf
                                include(doc/doc.pri)
                                
                                QT += qml quick gui gui-private core-private
                                
                                win32 {
                                    CONFIG += no-pkg-config
                                    QMAKE_TARGET_PRODUCT = "Qt Virtual Keyboard (Qt $$QT_VERSION)"
                                    QMAKE_TARGET_DESCRIPTION = "Virtual Keyboard for Qt."
                                }
                                
                                !no-pkg-config: CONFIG += link_pkgconfig
                                
                                include(../config.pri)
                                
                                CONFIG += lang-ar_AR lang-fr_FR
                                
                                SOURCES += platforminputcontext.cpp \
                                    inputcontext.cpp \
                                    abstractinputmethod.cpp \
                                    plaininputmethod.cpp \
                                    inputengine.cpp \
                                    shifthandler.cpp \
                                    plugin.cpp \
                                    inputmethod.cpp \
                                    selectionlistmodel.cpp \
                                    defaultinputmethod.cpp \
                                    abstractinputpanel.cpp \
                                    enterkeyaction.cpp \
                                    enterkeyactionattachedtype.cpp \
                                    settings.cpp \
                                    virtualkeyboardsettings.cpp \
                                    trace.cpp \
                                
                                HEADERS += platforminputcontext.h \
                                    inputcontext.h \
                                    abstractinputmethod.h \
                                    plaininputmethod.h \
                                    inputengine.h \
                                    shifthandler.h \
                                    inputmethod.h \
                                    selectionlistmodel.h \
                                    defaultinputmethod.h \
                                    abstractinputpanel.h \
                                    virtualkeyboarddebug.h \
                                    enterkeyaction.h \
                                    enterkeyactionattachedtype.h \
                                    settings.h \
                                    virtualkeyboardsettings.h \
                                    plugin.h \
                                    trace.h \
                                
                                RESOURCES += \
                                    content/styles/default/default_style.qrc \
                                    content/styles/retro/retro_style.qrc \
                                    content/content.qrc
                                
                                LAYOUT_FILES += \
                                    content/layouts/en_GB/dialpad.qml \
                                    content/layouts/en_GB/digits.qml \
                                    content/layouts/en_GB/handwriting.qml \
                                    content/layouts/en_GB/numbers.qml \
                                    content/layouts/en_GB/symbols.qml
                                
                                contains(CONFIG, lang-en.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/en_GB/main.qml
                                }
                                contains(CONFIG, lang-ar.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/ar_AR/digits.qml \
                                        content/layouts/ar_AR/main.qml \
                                        content/layouts/ar_AR/numbers.qml \
                                        content/layouts/ar_AR/symbols.qml
                                }
                                contains(CONFIG, lang-da.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/da_DK/main.qml \
                                        content/layouts/da_DK/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/da_DK/handwriting.qml
                                }
                                contains(CONFIG, lang-de.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/de_DE/main.qml \
                                        content/layouts/de_DE/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/de_DE/handwriting.qml
                                }
                                contains(CONFIG, lang-es.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/es_ES/main.qml \
                                        content/layouts/es_ES/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/es_ES/handwriting.qml
                                }
                                contains(CONFIG, lang-fa.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/fa_FA/digits.qml \
                                        content/layouts/fa_FA/main.qml \
                                        content/layouts/fa_FA/numbers.qml \
                                        content/layouts/fa_FA/symbols.qml
                                }
                                contains(CONFIG, lang-fi.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/fi_FI/main.qml \
                                        content/layouts/fi_FI/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/fi_FI/handwriting.qml
                                }
                                contains(CONFIG, lang-fr.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/fr_FR/main.qml \
                                        content/layouts/fr_FR/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/fr_FR/handwriting.qml
                                }
                                contains(CONFIG, lang-hi.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/hi_IN/main.qml \
                                        content/layouts/hi_IN/symbols.qml
                                }
                                contains(CONFIG, lang-it.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/it_IT/main.qml \
                                        content/layouts/it_IT/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/it_IT/handwriting.qml
                                }
                                contains(CONFIG, lang-ja.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/ja_JP/main.qml \
                                        content/layouts/ja_JP/symbols.qml
                                }
                                contains(CONFIG, lang-ko.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/ko_KR/main.qml \
                                        content/layouts/ko_KR/symbols.qml
                                }
                                contains(CONFIG, lang-nb.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/nb_NO/main.qml \
                                        content/layouts/nb_NO/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/nb_NO/handwriting.qml
                                }
                                contains(CONFIG, lang-pl.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/pl_PL/main.qml \
                                        content/layouts/pl_PL/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/pl_PL/handwriting.qml
                                }
                                contains(CONFIG, lang-pt.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/pt_PT/main.qml \
                                        content/layouts/pt_PT/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/pt_PT/handwriting.qml
                                }
                                contains(CONFIG, lang-ro.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/ro_RO/main.qml \
                                        content/layouts/ro_RO/symbols.qml \
                                        content/layouts/ro_RO/handwriting.qml
                                }
                                contains(CONFIG, lang-ru.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/ru_RU/main.qml \
                                        content/layouts/ru_RU/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/ru_RU/handwriting.qml
                                }
                                contains(CONFIG, lang-sv.*) {
                                    LAYOUT_FILES += \
                                        content/layouts/sv_SE/main.qml \
                                        content/layouts/sv_SE/symbols.qml
                                t9write: LAYOUT_FILES += \
                                        content/layouts/sv_SE/handwriting.qml
                                }
                                contains(CONFIG, lang-zh(_CN)?) {
                                    LAYOUT_FILES += \
                                        content/layouts/zh_CN/main.qml \
                                        content/layouts/zh_CN/symbols.qml
                                }
                                contains(CONFIG, lang-zh(_TW)?) {
                                    LAYOUT_FILES += \
                                        content/layouts/zh_TW/main.qml \
                                        content/layouts/zh_TW/symbols.qml
                                }
                                
                                retro-style {
                                    DEFINES += QT_VIRTUALKEYBOARD_DEFAULT_STYLE=\\\"retro\\\"
                                } else {
                                    DEFINES += QT_VIRTUALKEYBOARD_DEFAULT_STYLE=\\\"default\\\"
                                }
                                
                                OTHER_FILES += \
                                    content/styles/default/*.qml \
                                    content/styles/retro/*.qml \
                                    content/*.qml \
                                    content/components/*.qml \
                                    qtvirtualkeyboard.json
                                
                                !disable-desktop:isEmpty(CROSS_COMPILE):!qnx {
                                    SOURCES += desktopinputpanel.cpp inputview.cpp
                                    HEADERS += desktopinputpanel.h inputview.h
                                    DEFINES += QT_VIRTUALKEYBOARD_DESKTOP
                                    !no-pkg-config:packagesExist(xcb) {
                                        PKGCONFIG += xcb xcb-xfixes
                                        DEFINES += QT_VIRTUALKEYBOARD_HAVE_XCB
                                    }
                                }
                                SOURCES += appinputpanel.cpp
                                HEADERS += appinputpanel.h
                                
                                qtquickcompiler: DEFINES += COMPILING_QML
                                
                                !disable-hunspell {
                                    exists(3rdparty/hunspell/src/hunspell/hunspell.h) {
                                        SOURCES += hunspellinputmethod.cpp hunspellinputmethod_p.cpp hunspellworker.cpp
                                        HEADERS += hunspellinputmethod.h hunspellinputmethod_p.h hunspellworker.h
                                        DEFINES += HAVE_HUNSPELL
                                        QMAKE_USE += hunspell
                                        exists(3rdparty/hunspell/data) {
                                            hunspell_data.files = 3rdparty/hunspell/data/*.dic 3rdparty/hunspell/data/*.aff
                                            hunspell_data.path = $$DATAPATH/hunspell
                                            INSTALLS += hunspell_data
                                            !prefix_build: COPIES += hunspell_data
                                        } else {
                                            error("Hunspell dictionaries are missing! Please copy .dic and .aff" \
                                                  "files to src/virtualkeyboard/3rdparty/hunspell/data directory.")
                                        }
                                    } else:!no-pkg-config:packagesExist(hunspell) {
                                        SOURCES += hunspellinputmethod.cpp hunspellinputmethod_p.cpp hunspellworker.cpp
                                        HEADERS += hunspellinputmethod.h hunspellinputmethod_p.h hunspellworker.h
                                        DEFINES += HAVE_HUNSPELL
                                        PKGCONFIG += hunspell
                                    } else {
                                        message("Hunspell not found! Spell correction will not be available.")
                                    }
                                }
                                
                                pinyin {
                                    SOURCES += \
                                        pinyininputmethod.cpp \
                                        pinyindecoderservice.cpp
                                    HEADERS += \
                                        pinyininputmethod.h \
                                        pinyindecoderservice.h
                                    DEFINES += HAVE_PINYIN
                                    QMAKE_USE += pinyin
                                    pinyin_data.files = $$PWD/3rdparty/pinyin/data/dict_pinyin.dat
                                    pinyin_data.path = $$DATAPATH/pinyin
                                    INSTALLS += pinyin_data
                                    !prefix_build: COPIES += pinyin_data
                                }
                                
                                tcime {
                                    SOURCES += \
                                        tcinputmethod.cpp
                                    HEADERS += \
                                        tcinputmethod.h
                                    DEFINES += HAVE_TCIME
                                    cangjie: DEFINES += HAVE_TCIME_CANGJIE
                                    zhuyin: DEFINES += HAVE_TCIME_ZHUYIN
                                    QMAKE_USE += tcime
                                    tcime_data.files = \
                                        $$PWD/3rdparty/tcime/data/qt/dict_phrases.dat
                                    cangjie: tcime_data.files += \
                                        $$PWD/3rdparty/tcime/data/qt/dict_cangjie.dat
                                    zhuyin: tcime_data.files += \
                                        $$PWD/3rdparty/tcime/data/qt/dict_zhuyin.dat
                                    tcime_data.path = $$DATAPATH/tcime
                                    INSTALLS += tcime_data
                                    !prefix_build: COPIES += tcime_data
                                }
                                
                                hangul {
                                    SOURCES += \
                                        hangulinputmethod.cpp \
                                        hangul.cpp
                                    HEADERS += \
                                        hangulinputmethod.h \
                                        hangul.h
                                    DEFINES += HAVE_HANGUL
                                }
                                
                                openwnn {
                                    SOURCES += openwnninputmethod.cpp
                                    HEADERS += openwnninputmethod.h
                                    DEFINES += HAVE_OPENWNN
                                    QMAKE_USE += openwnn
                                }
                                
                                lipi-toolkit:t9write: \
                                    error("Conflicting configuration flags: lipi-toolkit and t9write." \
                                          "Please use either one, but not both at the same time.")
                                
                                lipi-toolkit {
                                    CONFIG += exceptions
                                    SOURCES += \
                                        lipiinputmethod.cpp \
                                        lipisharedrecognizer.cpp \
                                        lipiworker.cpp
                                    HEADERS += \
                                        lipiinputmethod.h \
                                        lipisharedrecognizer.h \
                                        lipiworker.h
                                    DEFINES += HAVE_LIPI_TOOLKIT
                                    INCLUDEPATH += \
                                        3rdparty/lipi-toolkit/src/include \
                                        3rdparty/lipi-toolkit/src/util/lib
                                    LIBS += -L$$OUT_PWD/../../lib \
                                        -lshaperecommon$$qtPlatformTargetSuffix() \
                                        -lltkcommon$$qtPlatformTargetSuffix() \
                                        -lltkutil$$qtPlatformTargetSuffix()
                                    win32: LIBS += Advapi32.lib
                                    else: LIBS += -ldl
                                    record-trace-input: DEFINES += QT_VIRTUALKEYBOARD_LIPI_RECORD_TRACE_INPUT
                                }
                                
                                t9write {
                                    include(3rdparty/t9write/t9write-build.pri)
                                    equals(T9WRITE_FOUND, 0): \
                                        error("T9Write SDK could not be found. Please make sure you have extracted" \
                                              "the contents of the T9Write SDK to $$PWD/3rdparty/t9write")
                                    SOURCES += \
                                        t9writeinputmethod.cpp \
                                        t9writeworker.cpp
                                    HEADERS += \
                                        t9writeinputmethod.h \
                                        t9writeworker.h
                                    DEFINES += HAVE_T9WRITE
                                    QMAKE_USE += t9write_db
                                    INCLUDEPATH += $$T9WRITE_INCLUDE_DIRS
                                    LIBS += $$T9WRITE_ALPHABETIC_LIBS
                                }
                                
                                arrow-key-navigation: DEFINES += QT_VIRTUALKEYBOARD_ARROW_KEY_NAVIGATION
                                
                                include(generateresource.pri)
                                
                                RESOURCES += $$generate_resource(layouts.qrc, $$LAYOUT_FILES, /QtQuick/VirtualKeyboard)
                                
                                PLUGIN_TYPE = platforminputcontexts
                                PLUGIN_EXTENDS = -
                                PLUGIN_CLASS_NAME = QVirtualKeyboardPlugin
                                load(qt_plugin)
                                

                                Just added CONFIG += lang-ar_AR lang-fr_FR , to get the keyboard in arabic and french,
                                and i didnt change any other line,
                                its nt compiling in Qt creator,

                                I am not using out of source, and i deleted .pro.user file,deleted build folder then tries to compile, still no change, its not compiling.

                                Thanks,

                                Pradeep Kumar
                                Qt,QML Developer

                                1 Reply Last reply
                                0
                                • michaelLM Offline
                                  michaelLM Offline
                                  michaelL
                                  wrote on last edited by
                                  #53

                                  @Pradeep-Kumar dont use that project but the qtvirtualkeyboard.pro project that is above that directory and inside the .pro looks like this:

                                  OTHER_FILES += README.md

                                  load(qt_parts)
                                  QT += core
                                  CONFIG+= lang-all

                                  add one more step "make" in build and put in arguments "install"

                                  For me the project location is "Qt5.7.1/5.7/Src/qtvirtualkeyboard/qtvirtualkeyboard.pro"
                                  What you are building is located on "Qt5.7.1/5.7/Src/qtvirtualkeyboard/src/virtualkeyboard/virtualkeyboard.pro"

                                  I am able to see all languages on my linux desktop.

                                  I also compiled with same QTCreator on desktop using qmake for my embedded linux and could see all languages except chinese/korea/japan/tawain. I keep getting "japaneseInputMethos is not a type" and so on.
                                  Could anyone get those to work? On my PC they work but not on embedded.
                                  I followed this section http://doc.qt.io/qt-5/qtvirtualkeyboard-deployment-guide.html and deploy the plugins to my embedded linux but i get all languages except those. Is there any other files i have to deploy for Japan/Korea/Chinese/Tawain languages?
                                  Any idea?

                                  1 Reply Last reply
                                  2
                                  • Pradeep KumarP Offline
                                    Pradeep KumarP Offline
                                    Pradeep Kumar
                                    wrote on last edited by
                                    #54

                                    Hi,

                                    @michaelL

                                    so what is the difference between the qtvirtualkeyboard in the path

                                    Qt5.7.0/5.7/Src/qtvirtualkeyboard/src/virtualkeyboard/virtualkeyboard.pro

                                    and

                                    in Qt5.7.0/5.7/Src/qtvirtualkeyboard/qtvirtualkeyboard.pro,

                                    And i am not getting in respective languages, from the path
                                    Qt5.7.0/5.7/Src/qtvirtualkeyboard/qtvirtualkeyboard.pro

                                    Are u getting?

                                    Thanks,

                                    Pradeep Kumar
                                    Qt,QML Developer

                                    1 Reply Last reply
                                    2
                                    • michaelLM Offline
                                      michaelLM Offline
                                      michaelL
                                      wrote on last edited by
                                      #55

                                      @Pradeep-Kumar the Qt5.7.0/5.7/Src/qtvirtualkeyboard/qtvirtualkeyboard.pro is the main project for all of the inside projects. You have to build it so that all files/languages/layout and so on are compiled too. I think the projects inside have dependencies of the others.
                                      I am getting all languages on my PC running Qt5.7.1
                                      If you use QT Creator to make the project you have to add a "Build step" in "build settings" under "build setps"
                                      The step you add is "make" and type in arguments "install".
                                      So qt creator will do qmake->make->make install
                                      If it does it with no error you can open the basic example project and you will get all languages.

                                      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