фатальная ошибка: файл «string.h» не найден после обновления до python 3.2 и установки определенных модулей из virtualenv

Я нахожусь на Mac OSX 10.8 (Mountain Lion) и только что установил Python 3.2.3.

При установке pycrypto из виртуальной среды с использованием этой версии python:

$ virtualenv --no-site-packages -p /usr/local/bin/python3.2-32 venv $ source venv/bin/activate $ pip install pycrypto 

Я получаю сообщение об ошибке:

 gcc-4.2 not found, using clang instead building 'Crypto.Hash._MD2' extension warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath. Compiling with an SDK that doesn't seem to exist: /Developer/SDKs/MacOSX10.6.sdk Please check your Xcode installation clang -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.6.sdk -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/Library/Frameworks/Python.framework/Versions/3.2/include/python3.2m -c src/MD2.c -o build/temp.macosx-10.6-intel-3.2/src/MD2.o src/MD2.c:30:10: fatal error: 'string.h' file not found #include <string.h> ^ 1 error generated. error: command 'clang' failed with exit status 1 

Подобная вещь случается при попытке установить криптовалют.

Начиная с версии 2.4, Pycrypto утверждает, что поддерживает python 3.

Я добавил символическую ссылку в папку разработчика xcode:

 $ sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer /Developer 

но все, что существует в этой папке, это MacOSX10.7.sdk MacOSX10.8.sdk (а не MacOSX10.6.sdk по мере необходимости выше).

Я что-то пропустил в своей системе? Как я могу сказать, чтобы использовать один из других SDK?

One Solution collect form web for “фатальная ошибка: файл «string.h» не найден после обновления до python 3.2 и установки определенных модулей из virtualenv”

Получил это, выполнив следующие действия:

Как и в приведенном выше комментарии, убедитесь, что установлены средства командной строки, который также устанавливает заголовки системы:

Запустите Xcode, откройте Xcode -> Настройки … и перейдите на вкладку «Загрузки». В разделе «Компоненты» убедитесь, что установлены средства командной строки; это также установит системные заголовки в системные папки.

Как указано в этом ответе , создайте символическую ссылку на папку разработчика:

 sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer /Developer 

Однако по-прежнему появляется сообщение об ошибке:

 Compiling with an SDK that doesn't seem to exist: /Developer/SDKs/MacOSX10.6.sdk 

Это связано с тем, что Python 3.2 предполагает, что вы используете Mac OSX 10.6

Я исправил это, подделав среду OSX 10.6, создав символическую ссылку от нее к среде OSX 10.8:

 sudo ln -s /Developer/SDKs/MacOSX10.8.sdk MacOSX10.6.sdk 

Пакет успешно устанавливается сейчас.

  • SQLAlchemy не будет обновлять мою базу данных
  • idle-python3.2 не запускается: жалобы на NameError: имя «Tk» не определено
  • Является ли это ошибкой файла python 3?
  • NameError: имя 'reduce' не определено в Python
  • PyEval_InitThreads в Python 3: Как / когда его называть? (сага продолжает тошноту)
  • Python3 AttributeError: объект 'list' не имеет атрибута 'clear'
  • Python 3.2 странная ошибка с типом диапазона в списке
  • SQLAlchemy + pymysql Ошибка: sqlalchemy.util.queue.Empty
  • Python - cxfreeze продолжает говорить, что файл / каталог не существует
  • Как переопределить встроенные функции python с помощью инструкции import?
  • Как узнать / изменить текущий каталог в оболочке Python?
  • Python - лучший язык программирования в мире.