首先,确保系统软件包为最新版本,并安装CXImage编译所需的依赖库(包括构建工具、PNG/JPEG/TIFF图像库等):
sudo apt update && sudo apt upgrade -y
sudo apt install build-essential cmake libpng-dev libjpeg-dev libtiff-dev libgif-dev -y
说明:build-essential包含gcc/g++等编译工具,cmake用于生成Makefile,libpng-dev/libjpeg-dev等为CXImage支持的图像格式提供底层库支持。
从CXImage官方GitHub仓库克隆最新源码(建议选择master或main分支,避免旧版本兼容性问题):
git clone https://github.com/cximage/cximage.git
cd cximage
通过CMake生成构建文件并编译安装:
mkdir build && cd build
cmake .. # 生成Makefile(默认安装路径为/usr/local)
make -j$(nproc) # 多线程编译(加快编译速度,$(nproc)表示CPU核心数)
sudo make install # 安装至系统目录(需管理员权限)
为确保编译器能找到CXImage的头文件(/usr/local/include)和库文件(/usr/local/lib),需将路径添加到环境变量中:
echo 'export CPLUS_INCLUDE_PATH=/usr/local/include:$CPLUS_INCLUDE_PATH' >> ~/.bashrc
echo 'export LIBRARY_PATH=/usr/local/lib:$LIBRARY_PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH' >> ~/.bashrc # 运行时库路径
source ~/.bashrc # 使环境变量立即生效
通过以下命令检查CXImage是否安装成功:
cximage --version # 查看版本信息(若提示“command not found”,需检查安装路径)
或在C++项目中编写测试代码(如加载/保存图像),编译运行验证功能:
#include <iostream>
#include "cximage.h"
int main() {
CxImage image;
if (image.Load("test.jpg")) { // 替换为实际图像路径
std::cout << "Loaded image: " << image.GetWidth() << "x" << image.GetHeight() << std::endl;
image.Save("output.png"); // 转换为PNG格式
return 0;
} else {
std::cerr << "Failed to load image!" << std::endl;
return 1;
}
}
编译命令:g++ test.cpp -o test -lcximage,运行:./test。
libpng、libjpeg)已正确安装,并在编译时链接(如g++ test.cpp -o test -lcximage -lpng -ljpeg)。CPLUS_INCLUDE_PATH是否包含/usr/local/include,或手动将CXImage的include目录添加到项目中。/usr/local/lib添加到LD_LIBRARY_PATH(已在步骤4中配置)。