在 Debian 中使用 CxImage 报错,常见原因大致可以归为以下几类。你可以对照看看是哪一种情况。
CxImage 依赖一些图像格式库,比如:
libjpeglibpnglibtifflibgifzliberror while loading shared libraries: libjpeg.so.62
sudo apt update
sudo apt install -y \
libjpeg-dev libpng-dev libtiff-dev libgif-dev zlib1g-dev
如果是 运行时 报错,而不是编译时:
sudo apt install -y libjpeg62-turbo libpng16-16 libtiff5
CxImage 在 Debian 上不建议直接 make 官方源码,因为它:
cximage.h 或 ximage.hfatal error: ximage.h: No such file or directory
使用已经适配 Linux 的版本或封装:
git clone https://github.com/akshaybaweja/cximage.git
cd cximage
make
或自己指定 include 路径:
g++ test.cpp -I./CxImage -L./lib -lcximage
Debian 现在基本都是 amd64,而 CxImage 早期代码:
long 作为句柄Segmentation faultcximage-7.0x)#define _LINUX
#define _64BIT
Debian 默认 UTF-8,而 CxImage 内部偏 Windows ANSI。
false手动转码(iconv / std::filesystem):
std::string path = u8"测试.png";
或使用 LoadW 接口(如果支持)。
现实建议:
CxImage 已经多年不活跃,在 Debian / Linux 上坑很多
更推荐:
你可以贴出:
cat /etc/os-release)我可以直接告诉你是哪一条导致的。