CxImage Ubuntu使用教程
导读:Ubuntu 下 CxImage 安装与使用教程 一 环境准备与安装方式 更新系统并安装基础工具与依赖: 命令:sudo apt update && sudo apt install -y build-essential...
Ubuntu 下 CxImage 安装与使用教程
一 环境准备与安装方式
- 更新系统并安装基础工具与依赖:
- 命令:sudo apt update & & sudo apt install -y build-essential cmake git libpng-dev libjpeg-dev libtiff-dev libgif-dev
- 安装方式一 使用 APT(推荐,若仓库提供包):
- 命令:sudo apt install -y libcximage-dev
- 验证:pkg-config --cflags --libs cximage(应输出来自 cximage 的编译与链接标志)
- 安装方式二 从源码构建(适用于仓库无包或需要最新版本):
- 获取源码:git clone https://github.com/antaressoftware/cxImage.git
- 构建安装:
- mkdir build & & cd build
- cmake -DCMAKE_INSTALL_PREFIX=/usr/local …
- make -j$(nproc)
- sudo make install
- 验证:pkg-config --cflags --libs cximage
二 编译与运行示例
- 示例功能:加载 JPG、缩放至宽度 300 像素(高度按比例)、保存为 JPG。
- 示例代码(保存为 main.cpp):
#include "ximage.h" #include < iostream> int main() { CxImage image; if (!image.Load("input.jpg", CXIMAGE_FORMAT_JPG)) { std::cerr < < "Failed to load image!" < < std::endl; return -1; } // 缩放:宽度300,高度0表示等比例 if (!image.Resample(300, 0)) { std::cerr < < "Failed to resample image!" < < std::endl; return -1; } if (!image.Save("output.jpg", CXIMAGE_FORMAT_JPG)) { std::cerr < < "Failed to save image!" < < std::endl; return -1; } std::cout < < "Image processed successfully." < < std::endl; return 0; } - 编译与运行:
- 使用 pkg-config 获取编译参数:
- g++ main.cpp -o main $(pkg-config --cflags --libs cximage) -lcximage
- 运行:
- ./main
- 注意:将工作目录下放置测试图片 input.jpg,程序将生成 output.jpg。
- 使用 pkg-config 获取编译参数:
三 常见问题与解决
- 找不到头文件或库文件:
- 确认已安装开发包(libcximage-dev),并使用 pkg-config 获取标志;若从源码安装到 /usr/local,确保链接时包含 -lcximage,必要时设置环境变量:
- export CPLUS_INCLUDE_PATH=/usr/local/include:$CPLUS_INCLUDE_PATH
- export LIBRARY_PATH=/usr/local/lib:$LIBRARY_PATH
- export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
- 确认已安装开发包(libcximage-dev),并使用 pkg-config 获取标志;若从源码安装到 /usr/local,确保链接时包含 -lcximage,必要时设置环境变量:
- 链接失败(undefined reference to …):
- 编译命令末尾添加 -lcximage,并使用 pkg-config 提供的链接参数。
- 旧版本 BMP 编解码在 Linux 上的兼容性问题:
- 部分历史版本在 Linux 下存在 BMP 编解码偏移/结构体定义问题,可能需要补丁或调整(如 BITMAPINFOHEADER 的字段类型)。建议优先使用较新版本或改用 PNG/JPG/TIFF 等更稳定的格式链路。
四 实用建议
- 优先使用发行版仓库的 libcximage-dev(简单、稳定);需要新特性或自定义选项时再从源码构建。
- 始终通过 pkg-config --cflags --libs cximage 获取编译与链接参数,避免手写路径。
- 源码构建建议使用 CMake 的标准 out-of-source 方式,并指定安装前缀(如 /usr/local),便于管理与卸载。
- 在 64 位系统上开发时,注意应用程序与库的位数一致(同为 64 位或 32 位),避免运行时加载失败。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CxImage Ubuntu使用教程
本文地址: https://pptw.com/jishu/755622.html
