Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I get python.h into my python virtualenv on Mac OSX?

I'm writing a C extension for a python application, and need to test python-specific C code. To do so I need to import Python.h into my C files, but for the life of me I haven't been able to do that. Most tutorials suggest something along the lines of sudo apt-get python-dev, but my system doesn't have apt-get, and even if it did I think it'd be better to have the dev files in my virtualenv.

Any idea how to get Python.h into my virtualenv?

like image 448
Faiyam Rahman Avatar asked Dec 26 '22 07:12

Faiyam Rahman


2 Answers

Set environment variable C_INCLUDE_PATH to include the directory of your python distribution.

Example: 1. Get include directory of your python distribution

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

This will return something like this:

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

Now Set you C_INCLUDE_PATH variable:

    export C_INCLUDE_PATH="/usr/local/Cellar//python3/3.6.3/Frameworks/Python.framework/Versions/3.6/include/python3.6m/"
like image 112
Aayush Gautam Avatar answered Dec 31 '22 14:12

Aayush Gautam


Assuming you are using MacOSX and Python installed through homebrew,

in terminal, you can find Python.h with:

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

that return on my sytem:

/usr/local/Cellar//python/2.7.6/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h
like image 43
toine Avatar answered Dec 31 '22 13:12

toine