Невозможно установить gdal в python 3.6.1 в macos Sierra

Я пытался установить GDAL в Python 3.6.1, но получаю следующую ошибку. Как это побороть?

bibinwilson ~ $ pip3 install gdal
Collecting gdal   Downloading GDAL-2.2.1.tar.gz (475kB)
100% |████████████████████████████████| 481kB 397kB/s 
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info/GDAL.egg-info
writing pip-egg-info/GDAL.egg-info/PKG-INFO
writing dependency_links to pip-egg-info/GDAL.egg-info/dependency_links.txt
writing top-level names to pip-egg-info/GDAL.egg-info/top_level.txt
writing manifest file 'pip-egg-info/GDAL.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found

Traceback (most recent call last):
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 131, in fetch_config
    p = subprocess.Popen([command, args], stdout=subprocess.PIPE)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py",
line 707, in __init__
    restore_signals, start_new_session)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py",
  line 1326, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: '../../apps/gdal-config'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 179, in get_gdal_config
    return fetch_config(option, gdal_config = self.gdal_config)
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 135, in fetch_config
    raise gdal_config_error(e)
__main__.gdal_config_error: [Errno 2] No such file or directory: '../../apps/gdal-config'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 131, in fetch_config
    p = subprocess.Popen([command, args], stdout=subprocess.PIPE)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py",
line 707, in __init__
    restore_signals, start_new_session)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py",
line 1326, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'gdal-config'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 339, in <module>
    **extra )
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/core.py",
line 148, in setup
    dist.run_commands()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py",
line 955, in run_commands
    self.run_command(cmd)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/dist.py",
line 974, in run_command
    cmd_obj.run()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/setuptools/command/egg_info.py",
line 279, in run
    self.find_sources()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/setuptools/command/egg_info.py",
line 306, in find_sources
    mm.run()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/setuptools/command/egg_info.py",
line 533, in run
    self.add_defaults()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/setuptools/command/egg_info.py",
line 562, in add_defaults
    sdist.add_defaults(self)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/setuptools/command/py36compat.py",
line 36, in add_defaults
    self._add_defaults_ext()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/setuptools/command/py36compat.py",
line 119, in _add_defaults_ext
    build_ext = self.get_finalized_command('build_ext')
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/cmd.py",
line 299, in get_finalized_command
    cmd_obj.ensure_finalized()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/cmd.py",
line 107, in ensure_finalized
    self.finalize_options()
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 214, in finalize_options
    self.gdaldir = self.get_gdal_config('prefix')
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 188, in get_gdal_config
    return fetch_config(option)
  File "/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/setup.py",
line 135, in fetch_config
    raise gdal_config_error(e)
__main__.gdal_config_error: [Errno 2] No such file or directory: 'gdal-config'

---------------------------------------- Command "python setup.py egg_info" failed with error code 1 in
/private/var/folders/43/7yqv__4j5776m508kggs_dxm0000gn/T/pip-build-naebgem9/gdal/

3 ответа

У меня была эта ошибка, и установка GDAL через Homebrew исправила это для меня. Установка бинарных файлов для GDAL не исправила ошибку, но как только я установил brew, она была исправлена.

brew install gdal

похоже на ту же проблему, что и здесь: Python GDAL: pip install --no-install GDAL завершается неудачно

Если вы уже установили двоичные файлы (как у меня), тогда этот ответ сработал для меня: /questions/37749102/oshibka-pri-ustanovke-gdal/37749113#37749113

Мне показалось, что эта простая процедура работает на MAC sierra, python 3.6, GDAL 2.2.3

1) Установите каркас GDAL с помощью установщика dmg для MAC [GDAL MAC Frameworks]: http://www.kyngchaos.com/software/frameworks

2) Добавьте папку gdal-config к своему пути и получите свою версию:

$ export PATH=/Library/Frameworks/GDAL.framework/Versions/2.2/Programs:$PATH

$ gdal-config --version

3) Используйте pip для установки версии, о которой сообщает gdal-config --version:

$ pip install gdal==2.2.3

Шаг 1 Похоже, что вы устанавливаете пакеты сайтов python в папках его инфраструктуры установки, и я думаю, что вы можете скопировать их в ваши пакеты сайтов python. Но лучше использовать pip install.

Эта простая процедура, похоже, сработала для меня на MAC

  1. Установите структуру GDAL, используя Brew> brew install gdal
  2. gdal-config --версия

gdal-config --версия

2.4.43. Привязка GDAL Python pip3 install gdal==2.4.4

Обратите внимание на версию GDAL в конце команды, она должна быть такой же, как полученная на шаге выше с помощью gdal-config. Чтобы избежать конфликтов или других проблем, важно установить и использовать именно те версии, которые потребуются любому компоненту.

Другие вопросы по тегам