libremidi
A modern C++ MIDI real-time & file I/O library. Supports Windows, macOS, Linux and WebMIDI.
Latest version: 5.4.3
Add to xmake.lua
add_requires("libremidi 5.4.3")Learn how to add and link packages with Xmake →
Information
- License
- BSD-2-Clause
- Recipe updated
- 2026-02-01T04:18:20.000Z
Platforms
- android: armeabi, armeabi-v7a, arm64-v8a, riscv64, x86, x86_64, mips, mip64
- msys: i386, x86_64
- mingw: i386, x86_64, arm, arm64
- windows: x86, x64, arm, arm64, arm64ec
- linux: i386, x86_64, armv7, armv7s, arm64, mips, mips64, mipsel, mips64el, loong64, riscv64, s390x, ppc, ppc64, ppc64el, sparc64
- bsd: i386, x86_64, arm, arm64, ppc, ppc64, ppc64el, riscv64, sparc64
- harmony: armeabi-v7a, arm64-v8a, x86, x86_64
- cross: i386, x86_64, arm, armv7, arm64, mips, mips64, mips64el, riscv, riscv64, loong64, s390x, ppc, ppc64, ppc64el, sh4, sparc64
- wasm: wasm32, wasm64
- iphoneos: arm64, x86_64
- macosx: x86_64, arm64
Options
boost- Use boost::small_vector to pass midi bytes instead of std::vector to reduce allocations. · Type: boolean · Default: false
header_only- Use header only version. · Type: boolean · Default: false
jack- Enable JACK back-end · Type: boolean · Default: false
slim_message- Use a fixed-size message format · Type: string · Default: 0
win_midi- Enable WinMIDI back-end · Type: boolean · Default: false
win_mm- Enable WinMM back-end · Type: boolean
win_uwp- Enable UWP back-end · Type: boolean · Default: false
Versions
- v3.0
- v4.5.0
- v5.1.0
- v5.2.0
- v5.3.0
- v5.3.1
- v5.4.2
- v5.4.3
Dependencies
Install with xrepo
Install the package independently of a project and inspect its available configuration.
install
xrepo install "libremidi 5.4.3"show info
xrepo info "libremidi"Link a library to your target
Declare the requirement, then attach the library to the target that uses it.
xmake.lua
add_requires("libremidi 5.4.3")
target("demo")
set_kind("binary")
add_files("src/*.cpp")
add_packages("libremidi")Open a package environment
Open a shell with the environment exported by this package. Use the executable names documented by the package.
enter shell
xrepo env -b "libremidi 5.4.3" shell