Проблемы установки pycrypto на osx

Я пытаюсь установить проект Django на мою машину OSX, для чего требуется PyCrypto. Я получаю следующую ошибку:

running install
running build
running build_py
running build_ext
running build_configure
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/Users/home/Documents/tmp/dlitz-pycrypto-d2170a4':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
Traceback (most recent call last):
  File "setup.py", line 486, in <module>
    core.setup(**kw)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/install.py", line 573, in run
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/build.py", line 127, in run
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
  File "setup.py", line 292, in run
    self.run_command(cmd_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
  File "setup.py", line 319, in run
    raise RuntimeError("autoconf error")
RuntimeError: autoconf error

Ответ 1

configure: error: no acceptable C compiler found in $PATH

Эта ошибка не требует пояснений. Получите компилятор C.

XCode должен работать.

Ответ 2

Если вы используете Xcode 4.x на Lion, вам нужно перепрыгнуть через дополнительные обручи, чтобы это можно было компилировать и установить:

1) В Xcode откройте "Настройки" > "Загрузки" и нажмите кнопку "Установить" рядом с "Инструменты командной строки", чтобы установить компилятор, необходимый для Python.

2) В моем случае мне пришлось создать временную символическую ссылку из gcc в gcc-4.2, чтобы заставить компилятор pycrypto заткнуться. В окне терминала su для получения доступа root:

a) Убедитесь, что установлен gcc:

# which gcc
/usr/bin/gcc

b) Создайте символическую ссылку:

# ln -s /usr/bin/gcc /usr/bin/gcc-4.2

3) cd в ваш каталог pycrypto и создайте и установите pycrpto:

# cd ~/Downloads/pycrypto-2.5 (или ваша версия)
# python setup.py build
# python setup.py install

4) Удалите ранее добавленную символическую ссылку:

# rm /usr/bin/gcc-4.2

Если ваш процесс работает как мой, у вас должен быть установлен установленный на Lion pycrypto.

Ответ 3

С Mountain Lion я вошел в систему: developer.apple.com/downloads/index.action# - спасибо bdargan!

Я загрузил "Инструменты командной строки (OS X Mountain Lion) для Xcode". Это не решило полностью. Мой Xcode был устаревшим (3.2.6), поэтому мне пришлось получить версию 4.4 с указанной выше страницы. Именно по этой причине я не мог выполнить 1) шаг в ответе sstinger. В старой версии Xcode не было параметра "Настройки" > "Загрузки".

Я читал, что вы также можете скачать Xcode из App Store. (Http://www.chrisk.de/blog/2011/03/how-to-upgrade-to-xcode-4-or-uninstall-xcode-3/)

Xcode 4 от developer.apple.com не заменил Xcode 3 и не переместил его в /Developer -old, поэтому я решил снова установить его из App Store, чтобы все было нормально. Также нет необходимости загружать инструменты командной строки отдельно, потому что это можно сделать из предпочтений Xcode 4, как сказал sstinger.

Я удалил предыдущие установки Xcode перед установкой из App Store со следующей командой.

sudo /Developer/Library/uninstall-devtools --mode=all

Я попытался запустить:

# python setup.py build

Я получил следующее предупреждение.

warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath.

Итак, я попытался установить GMP с Homebrew.

sudo brew install gmp

Но для этого я должен был сделать...

# sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2

# sudo ln -s /usr/bin/g++ /usr/bin/g++-4.2

Но Homebrew замораживался на чеке, и мне пришлось отменить. Он также замораживал, что я "brew доктор", и у него были некоторые странные проблемы. См. Обсуждение здесь https://github.com/mxcl/homebrew/issues/7252. У меня также были проблемы с другими установленными материалами.

Я обновил Homebrew и исправил все проблемы в "brew doctor". После этого я снова сделал # brew install gmp. На этот раз прошло.

Наконец, я попробовал # sudo pip install pycrypto. Я думал, что сделал это раньше, но теперь, похоже, правильно установил pycrypto. Я думаю, что действительно не нужно было устанавливать GMP или MPIR. Не уверен.:)