Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't find a way to install python-dev on Mac OS X

I'm trying to install psycopg2 for use with Django. I'm using a virtualenv and when I try to install psycopg2 I get an error which says:

In file included from psycopg/psycopgmodule.c:27:
./psycopg/psycopg.h:30:10: error: 'Python.h' file not found with <angled> include; use "quotes" instead
#include <Python.h>
         ^~~~~~~~~~
         "Python.h"
In file included from psycopg/psycopgmodule.c:27:
In file included from ./psycopg/psycopg.h:30:
psycopg/Python.h:29:10: fatal error: 'structmember.h' file not found
#include <structmember.h>
         ^
2 errors generated.
error: command 'clang' failed with exit status 1

I found a few threads online that seemed to suggest that the solution to this problem is to install python-dev. Unfortunately, I've only found it available for apt-get and yum. It's not available for homebrew or macports as for as I know. Can anyone help me figure out either why the installation fails or how I can get psycopg2? Thanks!

EDIT: I'm using a virtualenv and using the postgres app. I have the XCode command line tools installed already.

like image 435
Hendeca Avatar asked Nov 21 '15 12:11

Hendeca


1 Answers

So it turns out I was wrong about the cause of the problem. It was not because I didn't have the Python headers, it was because I had somehow deleted them all from the homebrew python directory. After some chatting on Freenode's Python channel, a user helped me identify the problem. There were only three files in

/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/include/python2.7

So I ran

brew uninstall python
brew install python

which reinstalled the headers and fixed the problem!

like image 118
Hendeca Avatar answered Sep 27 '22 22:09

Hendeca