无法使用pip在python 3中安装GDAL(clang因退出状态1而失败)

时间:2014-06-08 02:17:39

标签: clang gdal python-3.4

从终端(Mac OS X Mavericks)运行sudo pip3.4 install gdal后,我收到一条错误消息,指出找不到'col_port.h'文件并显示以下错误:command '/user/bin/clang/ failed with exit status 1(完整消息)在下面)。

我有gdal 1.11(从kingchaos.com下载的完整框架版本)和最新版本的Xcode命令行工具-Apple LLVM版本5.1(clang-503.0.40)(基于LLVM 3.4svn)


以下是运行sudo pip3.4 install gdal命令后出现的错误:

/usr/bin/clang -fno-strict-aliasing -Werror=declaration-after-statement -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I../../port -I../../gcore -I../../alg -I../../ogr/ -I/Library/Frameworks/Python.framework/Versions/3.4/include/python3.4m -I/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/core/include -I/Library/Frameworks/GDAL.framework/Versions/1.11/include -c extensions/gdal_wrap.cpp -o build/temp.macosx-10.6-intel-3.4/extensions/gdal_wrap.o
extensions/gdal_wrap.cpp:2230:11: warning: explicitly assigning a variable of type 'int' to itself [-Wself-assign]
                    res = SWIG_AddCast(res);
                    ~~~ ^              ~~~
extensions/gdal_wrap.cpp:2233:11: warning: explicitly assigning a variable of type 'int' to itself [-Wself-assign]
                    res = SWIG_AddCast(res);
                    ~~~ ^              ~~~
extensions/gdal_wrap.cpp:2535:22: warning: unused variable 'swig_empty_runtime_method_table' [-Wunused-variable]
  static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} };/* Sentinel */
                     ^
extensions/gdal_wrap.cpp:2855:10: fatal error: 'cpl_port.h' file not found
#include "cpl_port.h"
         ^

3 warnings and 1 error generated.
error: command '/usr/bin/clang' failed with exit status 1

2 个答案:

答案 0 :(得分:4)

解决方案是使用homebrew,然后运行pip3.4

brew install GDAL

并且,一旦安装,

pip3.4 install gdal

答案 1 :(得分:0)

今天遇到了这个问题。在brew上安装了GDAL,pip3失败了。解决方案是确保尝试通过pip安装的版本与安装的homebrew相同。

因此,请首先使用自制软件安装gdal

brew install gdal

您应该能够看到安装期间正在安装的版本。如果您已经安装了gdal,则可以使用以下方法检查版本:

brew info gdal

对我来说,这表明为我安装的gdal brew版本为:2.4.4 因此,您可以使用pip安装正确的版本

pip3 install gdal==2.4.4

这终于对我有用。