mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-09 18:35:32 +00:00
64 lines
No EOL
1.7 KiB
Markdown
64 lines
No EOL
1.7 KiB
Markdown
# How to build the keyboard processor
|
|
|
|
## Prerequisites
|
|
- Python 3
|
|
- Meson build system.
|
|
- C++14 or later compiler.
|
|
- lib std::fs
|
|
- kmcomp (for tests) -- must be added to path
|
|
|
|
## Installing Python3
|
|
### Linux
|
|
You will be able to install a python3 package in any reputable recent version
|
|
of linux using its package manager if it's not already installed.
|
|
|
|
### Mac OS X
|
|
You can get the official installer from the official Python site:
|
|
[https://www.python.org/downloads/mac-osx/]()
|
|
|
|
### Windows
|
|
You can get the official installer from the official Python site:
|
|
[https://www.python.org/downloads/windows/]()
|
|
|
|
|
|
## Installing Meson
|
|
Ensure you have Python3 correctly installed and can run the command `pip3`.
|
|
```
|
|
python3 -m pip install meson
|
|
```
|
|
|
|
## Building
|
|
In your source directory do the following:
|
|
```
|
|
cd keyboardprocessor
|
|
meson build --werror
|
|
cd build
|
|
ninja
|
|
meson test
|
|
```
|
|
|
|
## Note on kmcomp
|
|
kmcomp is the command-line compiler from Keyman Developer, available from https://keyman.com/ or
|
|
in this repo in /windows/src/developer/kmcomp. The compiler is currently available as a Windows
|
|
PE executable only, but it does run under WINE.
|
|
|
|
### Windows
|
|
The search path can be edited through System settings / Advanced system settings /
|
|
Environment Variables / User environment variables.
|
|
|
|
If you have Keyman Developer installed, add %KeymanDeveloperPath% to your path. Otherwise, add
|
|
the path where you extracted the kmcomp archive.
|
|
|
|
### Linux
|
|
You need a wrapper `kmcomp` shell script:
|
|
|
|
```
|
|
#!/bin/bash
|
|
wine `dirname "$0"`/kmcomp.exe "$@"
|
|
```
|
|
|
|
Place this in the same folder as you extracted kmcomp.exe, and `chmod +x kmcomp`. Add the folder
|
|
to the path (e.g. `export PATH=/path/to/kmcomp:$PATH`, which you can add to `.bashrc`)
|
|
|
|
### macOS
|
|
TODO |