Ubuntu18.04 odoo安装wkhtmltopdf报错: wkhtmltox : 依赖: libpng12-0 但无法安装它+odoo13虚拟环境问题

1. 问题描述

在Odoo11(Ubuntu)上要打印发票时,系统提示“找不到wkhtmltopdf”,所以打算安装wkhtmltopdf。结果安装失败。

$ sudo apt install ./wkhtmltox-0.12.2.1_linux-trusty-amd64.deb
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
 wkhtmltox : 依赖: libpng12-0 但无法安装它
             依赖: xfonts-75dpi 但是它还没有被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。

于是安装libpng12-0:

$ sudo apt install ./libpng12-0_1.2.54-1ubuntu1.1_amd64.deb 
[sudo] odoo 的密码: 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
 wkhtmltox : 依赖: libpng12-0 但是它还没有被安装
             依赖: xfonts-75dpi 但是它还没有被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。

2. 解决方法

* 其实报错信息中已说明了解决方法

E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。

按照提示信息执行命令:

$ sudo apt --fix-broken install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在修复依赖关系... 完成
下列软件包是自动安装的并且现在不需要了:
  linux-headers-4.15.0-38 linux-headers-4.15.0-38-generic
  linux-image-4.15.0-38-generic linux-modules-4.15.0-38-generic
  linux-modules-extra-4.15.0-38-generic
使用'sudo apt autoremove'来卸载它(它们)。
将会同时安装下列软件:
  xfonts-75dpi
下列软件包将被【卸载】:
  wkhtmltox
下列【新】软件包将被安装:
  xfonts-75dpi
升级了 0 个软件包,新安装了 1 个软件包,要卸载 1 个软件包,有 0 个软件包未被升级。
有 1 个软件包没有被完全安装或卸载。
需要下载 3,368 kB 的归档。
解压缩后将会空出 122 MB 的空间。
您希望继续执行吗? [Y/n] y
获取:1 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic/universe amd64 xfonts-75dpi all 1:1.0.4+nmu1 [3,368 kB]
已下载 3,368 kB,耗时 1秒 (3,287 kB/s)    
(正在读取数据库 ... 系统当前共安装有 208922 个文件和目录。)
正在卸载 wkhtmltox (1:0.12.5-1.xenial) ...
dpkg: 警告: 卸载 wkhtmltox 时,目录 /usr/local/lib 非空,因而不会删除该目录
dpkg: 警告: 卸载 wkhtmltox 时,目录 /usr/local/bin 非空,因而不会删除该目录
dpkg: 警告: 卸载 wkhtmltox 时,目录 /usr/local/share 非空,因而不会删除该目录
正在选中未选择的软件包 xfonts-75dpi。
(正在读取数据库 ... 系统当前共安装有 208902 个文件和目录。)
正准备解包 .../xfonts-75dpi_1%3a1.0.4+nmu1_all.deb  ...
正在解包 xfonts-75dpi (1:1.0.4+nmu1) ...
正在设置 xfonts-75dpi (1:1.0.4+nmu1) ...
正在处理用于 man-db (2.8.3-2ubuntu0.1) 的触发器 ...
正在处理用于 fontconfig (2.12.6-0ubuntu2) 的触发器 ...

之后在安装wkhtmltopdf的依赖。

$ sudo apt-get install x11proto-render-dev x11proto-core-dev
$ sudo apt-get install libXrender*
$ sudo apt-get install libfontconfig*

$ wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.2.1/wkhtmltox-0.12.2.1_linux-trusty-amd64.deb

$ sudo apt install ./wkhtmltox-0.12.2.1_linux-trusty-amd64.deb

$ sudo apt install ./libpng12-0_1.2.54-1ubuntu1.1_amd64.deb

$ sudo apt install ./wkhtmltox-0.12.2.1_linux-trusty-amd64.deb

$ wkhtmltopdf 
You need to specify atleast one input file, and exactly one output file
Use - for stdin or stdout

Name:
  wkhtmltopdf 0.12.2.1 (with patched qt)

3:简单办法

注:遇到安装wkhtmltopdf 依赖: libpng12-0 但无法安装它,可以直接下载

libpng12-0_1.2.54-1ubuntu1_amd64.deb

然后安装,最后下载wkhtmltox-0.12.1_linux-trusty-amd64.deb  

就可以了

#下载  
#注意根据操作系统选择相应版本  
wget http://sourceforge.net/projects/wkhtmltopdf/files/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb  
#安装  
sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb  
#安装完成后将可执行文件复制到usr/bin中  
sudo cp /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf  
#测试一下,打印一个网页到当前用户的home目录  
wkhtmltopdf www.baidu.com ~/baidu.pdf  
#如果显示成功输出了pdf,则wkhtmltopdf安装成功  
#安装中文字体  
sudo apt-get install ttf-wqy-zenhei  
sudo apt-get install ttf-wqy-microhei
------------
原文:https://blog.csdn.net/cmzhuang/article/details/80293626 

 

20200615

记录一下odoo13环境遇到的一系列问题

因为是利用虚拟环境启动的odoo,使用老是显示找不到包,掉包。

原因是没有指定文件夹WorkingDirectory=/opt/odoo13/odoo
Environment="PATH=/opt/odoo13/odoo-venv/bin"

 


sudo vi /etc/systemd/system/odoo13.service

[Unit]

Description=Odoo13

Requires=postgresql.service

After=network.target postgresql.service

[Service]

Type=simple

SyslogIdentifier=odoo13

PermissionsStartOnly=true

User=odoo13

Group=odoo13
WorkingDirectory=/opt/odoo13/odoo
Environment="PATH=/opt/odoo13/odoo-venv/bin"

@
"/etc/systemd/system/odoo13.service" 29 lines, 441 characters

 

解决虚拟环境后。又出现打印PDF问题

wkhtmltox

这个在另一篇有详细讲解。

你可能感兴趣的:(odoo,python)