部署到Heroku时未找到软件包'gobject-introspection-1.0'

时间:2018-11-18 15:56:48

标签: python ubuntu heroku

尝试将python Web应用程序部署到heroku,但遇到以下错误:

remote:            running build_ext
remote:            Package gobject-introspection-1.0 was not found in the pkg-config search path.
remote:            Perhaps you should add the directory containing `gobject-introspection-1.0.pc'
remote:            to the PKG_CONFIG_PATH environment variable
remote:            No package 'gobject-introspection-1.0' found
remote:            Command '('pkg-config', '--print-errors', '--exists', 'gobject-introspection-1.0 >= 1.46.0')' returned non-zero exit status 1.
remote:            
remote:            Try installing it with: 'sudo apt install libgirepository1.0-dev'
remote:            
remote:            ----------------------------------------
remote:        Command "/app/.heroku/python/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-l6sq2i_i/PyGObject/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-k7lo0r2b-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-l6sq2i_i/PyGObject/
remote:  !     Push rejected, failed to compile Python app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !   Push rejected to ggoh-trailer.
remote: 
To https://git.heroku.com/ggoh-trailer.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/ggoh-trailer.git'

OS = Ubuntu 18.04(Bionic) Python 3.7.1

在requirements.txt中:

pycairo == 1.18.0 PyGObject == 3.30.2

我已经如下安装libgirepository1.0-dev;

$ whereis gobject-introspection-1.0
gobject-introspection-1: /usr/include/gobject-introspection-1.0 /usr/share/gobject-introspection-1.

但是我仍然看到上面的相同错误。我还需要在Ubuntu上安装其他任何应用程序来实现依赖性吗?

1 个答案:

答案 0 :(得分:0)

手动编辑以下内容的require.txt文件;

Flask
gunicorn

Heroku能够接受我的git push。我学会了仅在require.txt中使用所需的依赖项。感谢克里斯为我指出的正确方向。