手动集成
kmpkg 安装库时会创建统一的目录结构,并按三元组(triplet) 分区管理文件。
在根路径下,每个三元组对应一个独立子目录,内部结构如下:
| 目录路径 | 包含内容 |
|---|---|
include/ | 头文件 |
lib/ 或 lib/manual-link/ | Release 版本的 .lib、.a 和 .so 文件 |
bin/ | Release 版本的 .dll 文件 |
lib/pkgconfig/ 或 share/pkgconfig/ | Release 版本的 .pc 文件(pkg-config 配置) |
debug/lib/ 或 debug/lib/manual-link/ | Debug 版本的 .lib、.a 和 .so 文件 |
debug/bin/ | Debug 版本的 .dll 文件 |
debug/lib/pkgconfig/ 或 debug/share/pkgconfig/ | Debug 版本的 .pc 文件 |
tools/<port>/ | 端口(port)对应的工具程序 |
示例:经典模式下,zlib:x64-windows 的 zlib.h 路径为 <kmpkg 根目录>/installed/x64-windows/include/zlib.h。
构建系统配置示例
请参考你所使用构建系统的官方文档,将 kmpkg 预编译的二进制文件集成到项目中。以下是常见构建系统的配置思路:
Makefile/AUTOCONF 项目
通过环境变量指定头文件路径、库路径和 pkg-config 配置路径:
# 设置头文件搜索路径
export CXXFLAGS=-I$(pwd)/installed/x64-linux/include
export CFLAGS=-I$(pwd)/installed/x64-linux/include
# 设置库文件搜索路径
export LDFLAGS=-L$(pwd)/installed/x64-linux/lib
# 设置 pkg-config 配置路径(用于依赖查找)
export PKG_CONFIG_PATH=$(pwd)/installed/x64-linux/lib/pkgconfig:$(pwd)/installed/x64-linux/share/pkgconfig:$PKG_CONFIG_PATH
Windows 动态三元组(如 x64-windows)
运行生成的可执行文件前,需确保动态链接库(.dll)能被找到,两种方式任选:
- 将
bin/或debug/bin/目录下的所需.dll文件复制到可执行文件所在目录; - 将
bin/或debug/bin/目录添加到系统环境变量PATH的最前面(优先查找 kmpkg 安装的库)。