我正在尝试在Ubuntu 20.04上安装Odoo 13,我按照不同的步骤进行安装,例如this one,但我总是遇到此 psycopg2 错误(在本段下面) ),当我到达安装requirements.txt组件的步骤时,此错误仅在python虚拟环境中发生。
错误:
ERROR: Command errored out with exit status 1:
command: /opt/odoo/odoo-venv/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-7jyb6cog/psycopg2/setup.py'"'"'; __file__='"'"'/tmp/pip-install-7jyb6cog/psycopg2/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-7c07yrdu
cwd: /tmp/pip-install-7jyb6cog/psycopg2/
Complete output (40 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/psycopg2
copying lib/sql.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/_ipaddress.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/errorcodes.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/_json.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/tz.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/__init__.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/pool.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/compat.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/_range.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/extensions.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/_lru_cache.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/errors.py -> build/lib.linux-x86_64-3.8/psycopg2
copying lib/extras.py -> build/lib.linux-x86_64-3.8/psycopg2
running build_ext
building 'psycopg2._psycopg' extension
creating build/temp.linux-x86_64-3.8
creating build/temp.linux-x86_64-3.8/psycopg
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DPSYCOPG_VERSION=2.8.3 (dt dec pq3 ext lo64) -DPG_VERSION_NUM=120002 -DHAVE_LO64=1 -I/opt/odoo/odoo-venv/include -I/usr/include/python3.8 -I. -I/usr/include/postgresql -I/usr/include/postgresql/12/server -c psycopg/psycopgmodule.c -o build/temp.linux-x86_64-3.8/psycopg/psycopgmodule.o -Wdeclaration-after-statement
In file included from psycopg/psycopgmodule.c:27:
./psycopg/psycopg.h:35:10: fatal error: libpq-fe.h: No such file or directory
35 | #include <libpq-fe.h>
| ^~~~~~~~~~~~
compilation terminated.
It appears you are missing some prerequisite to build the package from source.
You may install a binary package by installing 'psycopg2-binary' from PyPI.
If you want to install psycopg2 from source, please install the packages
required for the build and try again.
For further information please check the 'doc/src/install.rst' file (also at
<http://initd.org/psycopg/docs/install.html>).
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
ERROR: Failed building wheel for psycopg2
我尝试手动安装不同版本的psycopg2,但没有成功。 如果我不使用虚拟环境,则不会出现错误,安装过程将完全成功。
答案 0 :(得分:2)
pip install psycopg2-binary
(适用于ubuntu)和pip install psycopg2
(适用于Windows)
答案 1 :(得分:0)
与Python 3.8一起安装Odoo13对于许多软件包(包括psycopg2,Pillow,Python-ldap等)来说有点问题,有时候我花了很多时间但我却能够在python 3.8上运行20.04 我稍微修改了requirment.txt文件,然后观看我的github链接-
https://github.com/tanvirahmedkhan74/Installing-Odoo13-on-Ubuntu20.04-with-Python-3.8.git
在github上用给定的一个替换requirments.txt文件
答案 2 :(得分:-1)
odoo,具有连接自定义asddons存储库的选项 https://github.com/jerichoruz/odoo-instal-sh
答案 3 :(得分:-2)
首先安装枕头
pip3 install pillow
比通过安装安装psycopg2
sudo apt install python3-dev libpq-dev
通过运行来验证是否安装了pg_config
pg_config --version
如果没有添加到路径
export PATH=/usr/lib/postgresql/X.Y/bin/:$PATH
之后
pip install psycopg2
接下来,从requirements.txt中删除psycopg2和枕式包装机
然后重新运行
pip3 install -r requirements.txt