Deployment
Embed the keyboard in your app: see the Quick Start guide. Package layout, manual copy steps, fonts, licensing, and other fine-grained options: Advanced deployment.
What you need
A prebuilt LNVK release (plugin + dictionary data). The deploy helpers copy the QML plugin and share/lnvirtualkeyboard/dictionaries/ next to your executable using the default install-prefix layout (bin/, qml/, share/ under one root).
CMake (recommended)
Add the release directory to CMAKE_PREFIX_PATH, link your app, and call the deploy helper:
cmake_minimum_required(VERSION 3.16)
project(MyApp LANGUAGES CXX)
find_package(Qt6 REQUIRED COMPONENTS Quick)
find_package(LNVK REQUIRED CONFIG) # CMAKE_PREFIX_PATH=/path/to/LNVK
add_executable(myapp main.cpp)
target_link_libraries(myapp PRIVATE Qt6::Quick)
set_target_properties(myapp PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
ln_virtual_keyboard_deploy(myapp LANGUAGES en fr)
In main.cpp, add the QML import path before engine.load():
engine.addImportPath(QCoreApplication::applicationDirPath() + QStringLiteral("/../qml"));
Configure and build:
cmake -B build -DCMAKE_PREFIX_PATH="/path/to/LNVK"
cmake --build build
After build, your output tree looks like:
build/
├── bin/myapp
├── qml/Ln/VirtualKeyboard/ ← plugin + qmldir
└── share/lnvirtualkeyboard/
└── dictionaries/ ← layouts, themes, IME/prediction data
Run myapp from build/bin/ (or install the whole tree with the same relative paths).
qmake
Add one line to your .pro file:
include(/path/to/LNVK/integration/lnvirtualkeyboard.pri)
Build as usual. The .pri file copies the plugin and dictionaries into your output directory with the same layout as CMake above.
To ship only the languages your app uses:
LNVK_LANGUAGES = en fr
include(/path/to/LNVK/integration/lnvirtualkeyboard.pri)
Next steps
| Goal | Where to look |
|---|---|
| QML properties, profiles, themes | Quick Start, Languages, Theming, Configuration |
| Smaller installs, custom paths, manual copy | Advanced deployment |
| Optional bundled fonts or your own font files | Advanced deployment — Fonts |
| License files when redistributing data/fonts | Advanced deployment — Licensing |
Custom .pred dictionaries | Advanced deployment — Custom prediction |
Qt version
Use the release build that matches your Qt major version (Qt 5.15 or Qt 6.x).