Alpine Linux 3.14下wkhtmltopdf转PDF段错误,求源码编译教程
Alpine Linux 3.14 编译wkhtmltopdf 操作指引
你之前从edge社区源安装的包触发段错误,核心原因是edge源的软件依赖版本和Alpine 3.14稳定版的系统依赖不匹配,属于跨源安装的常见兼容性问题,按照以下步骤从源码编译即可解决:
1. 安装编译依赖
首先执行以下命令更新包索引并安装全部编译依赖:
apk update apk add build-base qt5-qtbase-dev qt5-qtwebkit-dev libx11-dev libxext-dev libxrender-dev fontconfig-dev freetype-dev openssl-dev git
2. 获取源码
拉取wkhtmltopdf 0.12.6稳定版官方源码,完成后进入源码目录。
3. 编译安装
- 创建构建目录并进入:
mkdir build && cd build - 生成编译配置:
qmake ..
如果不需要X11依赖、想要生成更轻量的静态版本,可以改用以下配置命令:qmake .. CONFIG+=static CONFIG-=release QMAKE_CXXFLAGS+=-fPIC - 执行编译:
make -j$(nproc)
如果设备内存小于2G,建议去掉-j$(nproc)参数,避免编译过程内存溢出中断。 - 安装编译完成的二进制文件:
make install
4. 验证功能
执行以下命令确认安装正常:
- 查看版本信息:
wkhtmltopdf --version,正常会返回0.12.6的版本标识 - 测试转换功能:
echo "<h1>Test Page</h1>" > test.html wkhtmltopdf test.html test.pdf
如果没有报段错误且正常生成test.pdf文件,即为安装成功。
额外优化
如果转换含有中文的HTML时出现乱码,安装开源中文字体即可解决:
apk add wqy-zenhei
内容的提问来源于stack exchange,提问作者Michele Carino
相关产品推荐
相关产品推荐

