【问题标题】:pip geoip installing in ubuntu gcc error在 ubuntu gcc 中安装 pip geoip 错误
【发布时间】:2014-11-15 18:56:34
【问题描述】:

我正在尝试在 python pip 中的 ubuntu 中安装 geoip...但是有相同的 gcc 错误

pip install GeoIP

gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes - fPIC -I/usr/include/python2.7 -c py_GeoIP.c -o build/temp.linux-i686-2.7/py_GeoIP.o -fno- strict-aliasing

py_GeoIP.c:23:19: fatal error: GeoIP.h: No such file or directory

compilation terminated.

error: command 'gcc' failed with exit status 1

如何在ubuntu中解决这个问题

【问题讨论】:

  • 来自GeoIP PyPi Page要求GeoIP C 库 1.4.7 或更高版本。你安装了 C 库吗?

标签: python gcc ubuntu-12.04 pip


【解决方案1】:

您需要安装libgeoip-dev 包。

$ easy_install GeoIP
Searching for GeoIP
Reading https://pypi.python.org/simple/GeoIP/
...
py_GeoIP.c:23:19: fatal error: GeoIP.h: No such file or directory
 #include "GeoIP.h"
                   ^
compilation terminated.
error: Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Returned 1.


$ apt-cache search geoip
...
libgeoip-dev - Development files for the GeoIP library
...


andrew@refbuntu:~$ sudo apt-get install libgeoip-dev -y
[sudo] password for andrew: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  geoip-bin libgeoip-dev
0 upgraded, 2 newly installed, 0 to remove and 159 not upgraded.
...
Setting up libgeoip-dev (1.5.1-1ubuntu1) ...
andrew@refbuntu:~$ easy_install GeoIP
...
Running GeoIP-1.3.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-rwdpkL/GeoIP-1.3.2/egg-dist-tmp-DLLeBT
/usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
  warnings.warn(msg)
warning: no files found matching 'ChangeLog'
zip_safe flag not set; analyzing archive contents...
Adding GeoIP 1.3.2 to easy-install.pth file

Installed /home/andrew/.local/lib/python2.7/site-packages/GeoIP-1.3.2-py2.7-linux-x86_64.egg
Processing dependencies for GeoIP
Finished processing dependencies for GeoIP

如果您安装了apt-file 包,您还可以按文件名搜索包含该文件的包:

$ apt-file search GeoIP.h
libgeoip-dev: /usr/include/GeoIP.h

这对于任何由于缺少依赖项而失败的安装/编译过程非常方便。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-01
    • 2018-03-19
    • 2022-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多