在 Ubuntu 中配置 CxImage 的完整步骤
一 准备与依赖
- 安装编译工具与常用图像依赖:
- sudo apt update
- sudo apt install -y build-essential cmake git libpng-dev libjpeg-dev libtiff-dev libgif-dev
- 说明:CxImage 为图像处理类库,支持 JPEG/PNG/BMP/GIF/TIFF 等格式;上述依赖用于启用对应编解码器与构建工具链。
二 获取源码与构建方式
- 方式 A 使用官方仓库的 Linux 分支(推荐)
- git clone https://github.com/cximage/cximage.git
- cd cximage
- 可选:git checkout master 或 main,并 git pull 更新
- 构建与安装:
- mkdir -p build && cd build
- cmake -DCMAKE_INSTALL_PREFIX=/usr/local …
- make -j$(nproc)
- sudo make install
- 方式 B 使用历史版本源码包(如 cximage599c)
- 适用于需要旧版或特定补丁的场景;部分版本在 Linux 下可能需要对 TIFF 相关文件做适配(例如调整 tif_xfile.cpp 的接口调用),再执行 configure/make 完成构建。
三 安装后配置与验证
- 配置运行时库路径(若安装到 /usr/local/lib):
- echo ‘/usr/local/lib’ | sudo tee /etc/ld.so.conf.d/cximage.conf
- sudo ldconfig
- 或在当前会话中导出:export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
- 头文件与库路径(如未使用系统默认路径):
- 编译时加 -I/usr/local/include,链接时加 -L/usr/local/lib -lcximage
- 验证安装结果:
- 查看库文件:ls /usr/local/lib/libcximage.so*
- 查看头文件:ls /usr/local/include/cximage.h
- 可选:cximage --version(若安装包提供了可执行工具或版本信息)。
四 编译与链接示例
- 示例代码 test.cpp:
- #include <cximage.h>
int main() {
CxImage image;
if (image.Load(“input.png”)) {
image.Save(“output.jpg”);
}
return 0;
}
- 编译命令:
- g++ test.cpp -o test -I/usr/local/include -L/usr/local/lib -lcximage
- 运行:
- 提示:若启用了 TIFF/GIF 等格式,确保相应依赖已安装,并在链接阶段包含对应库(多数发行版会自动解析 cximage 的链接依赖)。
五 常见问题与处理
- 找不到库或头文件
- 确认安装前缀与编译参数一致(-I/-L 指向实际安装目录),并执行 sudo ldconfig 刷新缓存。
- 构建失败
- 确认已安装 build-essential、cmake 与所有图像依赖;清理后重新 cmake/make。
- 兼容性与格式问题
- 老版本在 Linux 下对 BMP/TIFF 可能有兼容性问题,可按需修改相关源码(如 tif_xfile.cpp 的客户端打开逻辑)后再编译。
- 运行时报错“找不到共享库”
- 检查 /etc/ld.so.conf.d/ 是否包含库目录并执行 ldconfig,或使用 LD_LIBRARY_PATH 指定路径。