Как я могу получить python.h в мой python virtualenv на Mac OSX?

#python #c #python-extensions

#python #c #python-расширения

Вопрос:

Я пишу расширение C для приложения на python, и мне нужно протестировать код C, специфичный для python. Для этого мне нужно импортировать Python.h в мои файлы C, но, хоть убей, я не смог этого сделать. Большинство руководств предлагают что-то вроде sudo apt-get python-dev, но в моей системе нет apt-get, и даже если бы это было так, я думаю, было бы лучше иметь файлы разработчика в моем virtualenv.

Есть идеи, как получить Python.h в мой virtualenv?

Ответ №1:

Установите переменную окружения C_INCLUDE_PATH, чтобы включить каталог вашего дистрибутива python.

Пример: 1. Получите каталог включения вашего дистрибутива python

     find /usr/local/Cellar/ -name Python.h
 

Это вернет что-то вроде этого:

     /usr/local/Cellar//python3/3.6.3/Frameworks/Python.framework/Versions/3.6/include/python3.6m/Python.h
 

Теперь задайте переменную C_INCLUDE_PATH:

     export C_INCLUDE_PATH="/usr/local/Cellar//python3/3.6.3/Frameworks/Python.framework/Versions/3.6/include/python3.6m/"
 

Ответ №2:

Предполагая, что вы используете MacOSX и Python, установленные через homebrew,

в terminal , вы можете найти Python.h с:

 find /usr/local/Cellar/ -name Python.h
 

это возвращается в мою систему:

 /usr/local/Cellar//python/2.7.6/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h
 

Ответ №3:

в терминале,

 $python-config --includes