系统上未安装 C++ 编译器
我正在尝试安装一个叫做GDAL的Python包,具体信息可以在这个链接找到:http://trac.osgeo.org/gdal/wiki/GdalOgrInPython。
我已经成功安装了依赖项:Python 2.7.8、Numpy 1.8.2、libgdal 1.10.0和gdal-devel。不过,当我使用这个命令时:
pip install GDAL==1.10.0
我遇到了一些错误:
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I../../port -I../../gcore -I../../alg -I../../ogr/ -I/usr/local/include/python2.7 -I/root/.local/lib/python2.7/site-packages/numpy/core/include -I/usr/local/include -c extensions/gdal_wrap.cpp -o build/temp.linux-x86_64-2.7/extensions/gdal_wrap.o
gcc: extensions/gdal_wrap.cpp: 系统上没有安装C++编译器
错误:命令'gcc'失败,退出状态为1
这是我的系统信息:
# lsb_release -a
LSB版本: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch
发行商ID:CentOS
描述: CentOS发布5.10(最终版)
版本: 5.10
代号: Final
# cat /proc/version
Linux版本2.6.18-274.el5 (mockbuild@builder10.centos.org) (gcc版本4.1.2 20080704 (Red Hat 4.1.2-50)) #1 SMP Fri Jul 22 04:43:29 EDT 2011
这是我的编译器信息:
# gcc --version
gcc (GCC) 4.4.6 版权所有 (C) 2010 自由软件基金会,Inc.
# g++ --version
g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54) 版权所有 (C) 2006 自由软件基金会,Inc.
我还尝试使用:
# pip install --no-install GDAL==1.10.0
# cd /tmp/pip_build_root/GDAL && python setup.py build
但结果还是出现了同样的错误。
最后,我尝试通过以下方式从源代码构建它:
# ./configure --with-python
# make
# make install
不幸的是,还是出现了同样的错误。
我对此感到很困惑。你能给我一些提示吗?谢谢。
1 个回答
gcc (GCC) 4.4.6 版权所有 (C) 2010 自由软件基金会
g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54) 版权所有 (C) 2006 自由软件基金会
所以你确实有一个 C++ 编译器……但你没有适用于你正在使用的工具链 gcc 4.4.6 的 C++ 编译器。
你有两个选择:
- 安装 g++ 4.4.6。很可能只需要运行
yum install gcc-c++
或yum install gcc44-c++
之类的命令。 - 用 gcc 4.1.2 来配置,而不是 4.4.6。假设 4.1.2 可以用
gcc-4.1
这样的名字找到,这可能意味着在配置或设置步骤之前运行export CC=gcc-4.1
,但你可能还需要使用一些选择工具链的命令。
第一个选择几乎肯定是更好的主意。
如果你在这两个选择上需要帮助,那其实更像是在使用 Unix 或设置 RHEL/CentOS 的问题,而不是编程(尤其是 Python 编程!);在 Unix StackExchange 上的 这个问题 可能对你有帮助。