如何在 debian 64 位上正确安装 wkhtmltopdf?
Posted
技术标签:
【中文标题】如何在 debian 64 位上正确安装 wkhtmltopdf?【英文标题】:How to correctly install wkhtmltopdf on debian 64 bit? 【发布时间】:2016-11-10 18:11:30 【问题描述】:我正在尝试安装 wkhtmltopdf,但是当我这样做时:
sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb
我明白了:
Preparing to unpack wkhtmltox-0.12.1_linux-trusty-amd64.deb ...
Unpacking wkhtmltox (0.12.1) over (0.12.1) ...
dpkg: dependency problems prevent configuration of wkhtmltox:
wkhtmltox depends on libjpeg-turbo8; however:
Package libjpeg-turbo8 is not installed.
dpkg: error processing package wkhtmltox (--install):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.7.0.2-5) ...
Errors were encountered while processing:
wkhtmltox
所以我尝试了:
apt-get update
apt-get install libjpeg-turbo8
然后我得到
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libjpeg-turbo8 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source
E: Package 'libjpeg-turbo8' has no installation candidate
我使用的是 64 位的 debian。 我浏览了网络以找到解决方案,但不幸的是没有找到任何答案。 如何获取 libjpeg-turbo8?
编辑:
所以我尝试了apt-get install wkhtmltopdf
,尽管它不被推荐。
apt-get install wkhtmltopdf
的问题在于版本并不总是好的版本,我们应该使用 0.12.1
但是:
root@dev01:/opt/odoo/modules_scndf# apt-cache policy wkhtmltopdf
wkhtmltopdf:
Installed: 0.12.1-2
Candidate: 0.12.1-2
Version table:
*** 0.12.1-2 0
500 http://ftp.debian.org/debian/ jessie/main amd64 Packages
100 /var/lib/dpkg/status
即使使用apt-get install wkhtmltopdf
,版本似乎也不错,但是当我在 odoo 上启动打印时,我仍然得到 p>
Unable to find Wkhtmltopdf on this system. The report will be shown in html.
这意味着他没有按应有的方式安装。
编辑 2:
现在当我尝试打印报告时,我得到一个弹出窗口:
Wkhtmltopdf failed (Error code : -6). Message : The switch
--header-html, is not support using unpatched qt, and will be
ignored.The switch --footer-html, is not support using unpatched qt,
and will be ignored.QXcbConnection: Could not connect to display
【问题讨论】:
这对我有帮助 ***.com/a/50153456/26130 【参考方案1】:Ubuntu 和 Debian 软件包在大多数情况下都是兼容的,但并非在所有情况下都兼容,我认为这是您在尝试使用 Ubuntu 的 .deb
用于 Debian 时遇到的麻烦,而不是您应该获取 Debian 特定文件,(它适用于 jessie 和 wheezy)
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.1/wkhtmltox-0.12.1_linux-wheezy-amd64.deb
sudo dpkg -i wkhtmltox-0.12.1_linux-wheezy-amd64.deb
然后在/etc/init.d/openerp-server
或/etc/init.d/odoo-server
脚本中,这取决于你拥有哪一个
例如在path环境变量前面加上/usr/local/bin
,
PATH=/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin,
这告诉 odoo 在哪里寻找它需要的系统二进制文件,或者如果你不想弄乱这些文件,你可以选择将文件复制到 /usr/bin
sudo cp /usr/local/bin/wkhtmlto* /usr/bin/
【讨论】:
我在尝试执行 sudo dpkg -i wkhtmltox-0.12.1_linux-wheezy-amd64.deb dpkg: error processing package wkhtmltox (--install): 依赖问题 - 未配置处理时收到此错误man-db (2.7.0.2-5) 的触发器...处理时遇到错误:wkhtmltox 运行sudo apt-get dist-upgrade
,如果依赖问题没有解决运行sudo apt-get dist-upgrade -f
gna.org 似乎已关闭 - 请参阅此处:en.wikipedia.org/wiki/Gna!上面写着:The service was shut down in 2017.
关于替代下载源的任何建议?
是的,有一个替代来源...直接来自github,例如github.com/wkhtmltopdf/wkhtmltopdf/releases/0.12.1我已经更新了答案中的url
Odoo 11 出现了,仍然使用 0.12.1 版本,但不再在 debian Jessie 或 Wheezy 上运行。因此,在这里,要在 Stretch 上安装此版本的 wkhtmltopdf 的一些补充:您需要 download(在 google 和 wget
上找到 repo)和 install(使用dpkg -i
):libssl1.0.0_1.0.1t-1+deb8u7_amd64.deb
libpng12-0_1.2.49-1+deb7u2_amd64.deb
libjpeg8_8d-1+deb7u1_amd64.deb
然后就可以使用答案了。【参考方案2】:
这在 Debian Stretch 中对我有用:
$ sudo apt-get -q update
$ sudo apt-get -qy install --no-install-recommends wget
$ wget -nv -O /tmp/wkhtmltox.deb https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox_0.12.5-1.stretch_amd64.deb
$ sudo apt-get -qy install /tmp/wkhtmltox.deb
【讨论】:
谢谢,成功了。【参考方案3】:我正在运行 Debian Stretch 9.2 64 位,并且成功完成了以下操作:
sudo apt update
sudo apt install xfonts-75dpi xfonts-base gvfs colord glew-utils libvisual-0.4-plugins gstreamer1.0-tools opus-tools qt5-image-formats-plugins qtwayland5 qt5-qmltooling-plugins librsvg2-bin lm-sensors
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.stretch_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.stretch_amd64.deb
sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/
sudo cp /usr/local/bin/wkhtmltoimage /usr/bin/
然后检查安装:
wkhtmltopdf -V
应该返回:
wkhtmltopdf 0.12.5 (with patched qt)
【讨论】:
【参考方案4】:试试
sudo apt-get install -y wkhtmltopdf
sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb
sudo cp /usr/local/bin/wkhtmlto* /usr/bin/
【讨论】:
此错误发生在“sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb dpkg:依赖问题阻止配置 wkhtmltox:wkhtmltox 依赖于 libjpeg-turbo8;然而:包 libjpeg-turbo8未安装 dpkg: 错误处理包 wkhtmltox (--install): 依赖问题 - 未配置 man-db (2.7.0.2-5) 的处理触发器...处理时遇到错误:wkhtmltox【参考方案5】:我试图将 wkhtmltopdf 与现有的基于 debian 的 docker 映像一起使用。但是我遇到了
未安装软件包 libjpeg-turbo8
最后我通过使用 dpkg 安装 libjpeg-turbo8 解决了这个问题。以下是 docker 命令:
ARG jpeg=libjpeg-dev
ARG ssl=libssl-dev
ENV CFLAGS=-w CXXFLAGS=-w
RUN apt-get update && apt-get install -y -q --no-install-recommends \
build-essential \
libfontconfig1-dev \
libfreetype6-dev \
$jpeg \
libpng-dev \
$ssl \
libx11-dev \
libxext-dev \
libxrender-dev \
python \
zlib1g-dev \
xfonts-75dpi \
xfonts-base \
&& rm -rf /var/lib/apt/lists/*
RUN wget http://archive.ubuntu.com/ubuntu/pool/main/libj/libjpeg-turbo/libjpeg-turbo8_2.0.6-0ubuntu2_amd64.deb
RUN dpkg -i libjpeg-turbo8_2.0.6-0ubuntu2_amd64.deb
RUN wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb
RUN dpkg -i wkhtmltox_0.12.6-1.bionic_amd64.deb
RUN apt --fix-broken install
【讨论】:
【参考方案6】:这个问题是由于 wkhtmltopdf 包损坏造成的。
您可以尝试使用下面的命令来安装它们-
首先从系统中删除损坏的 wkhtmltopdf。使用 -
sudo apt-get purge wkhtmltopdf
然后尝试使用下面的命令-
cd /tmp/
然后为Odoo服务器下载推荐的wkhtmltopdf版本,目前为0.12.1:-
sudo wget http://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb
然后使用 dpkg 安装软件包:-
sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb
为了正常运行,我们需要将二进制文件复制到适当的位置:
sudo cp /usr/local/bin/wkhtmltopdf /usr/bin
sudo cp /usr/local/bin/wkhtmltoimage /usr/bin
【讨论】:
gna.org 似乎已关闭 - 请参阅此处:en.wikipedia.org/wiki/Gna!上面写着:The service was shut down in 2017.
关于替代下载源的任何建议?【参考方案7】:
wget http://nightly.odoo.com/extra/wkhtmltox-0.12.1.2_linux-jessie-amd64.deb
dpkg -i wkhtmltox-0.12.1.2_linux-jessie-amd64.deb
/etc/init.d/odoo restart
【讨论】:
在给出答案时,最好给出some explanation as to WHY your answer。【参考方案8】:下载路径更改为以下!请尝试使用以下链接。
https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.2.1/wkhtmltox-0.12.2.1_linux-trusty-amd64.deb
然后按照以下命令进行安装
sudo dpkg -i wkhtmltox-0.12.2.1_linux-trusty-amd64.deb
第二个选项
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
将文件复制到 /usr/bin/ 并重新启动所有正在运行的 Odoo 服务
sudo cp ./wkhtmltox/bin/wkhtmltoimage /usr/bin/
sudo cp ./wkhtmltox/bin/wkhtmltopdf /usr/bin/
【讨论】:
【参考方案9】:我正在使用Devuan ascii
(基于Debian stretch
),这就足够了
sudo apt install wkhtmltopdf
在安装过程中,它还引入了一些 Qt5 包。无需将可执行文件从/usr/local/bin/
复制到/usr/bin/
,因为它已经存在了。
【讨论】:
以上是关于如何在 debian 64 位上正确安装 wkhtmltopdf?的主要内容,如果未能解决你的问题,请参考以下文章
Windows 64 位上的 Qt Jambi eclipse 集成错误
如何在 Windows 10 64 位上安装 pygraphviz
Sonarqube 和 Jenkins 在 Windows 64 位上安装 - 此时 jre 出乎意料
如何在 Windows 7 64 位上安装 PyOpenSSL?