3

I'm kinda new to C, and I can't seem to do what I want. I need to make some Python bindings for C functions, and I think I can figure this out. But there's one little line that WILL NOT WORK.

#include <Python.h>

I get this:

fatal error #1035: Can't find include file <Python.h>.

I've tried everything. I just stuck Python.h in the same folder as my project first. Then I put the file name in Library and Object files under linker. Then I did the same with python31.lib, then I put the directory python31.lib is in in my PATH variable. Nothing will let me get past this line. I see a lot of solutions on the net for Linux, but none for Windows. Please help!

6
  • #include "Python.h" will find it if it's in the same directory. Linking is a different issue. Check your include path. What command line are you passing to GCC? Commented Aug 19, 2011 at 18:03
  • @nmichaels Looks like he's building in Windows, so GCC is irrelephant. Commented Aug 19, 2011 at 18:09
  • If all you need to do is generate Python bindings for C functions, use code.google.com/p/ctypesgen, it can probably do it automatically. Commented Aug 19, 2011 at 18:12
  • 1
    Oh! Thanks man! I thought I was screwed then I read that it should find the file if it's in the same directory as my source (it didn't). But I thought I'd follow through and check my include path (which I didn't even know existed). So I added the Python include path to the list of include paths, and did the same with Python libraries (to the libraries paths), and it compiled without any issues. Why have I not found stack overflow earlier??? You guys are the best! Commented Aug 19, 2011 at 18:14
  • 6
    @Santa Thanks for the irrelephant. Next year can I get an irrrhinoceros? Commented Aug 19, 2011 at 18:26

2 Answers 2

4

Whoops, answered in a comment. Here's a more answerly answer.

Make sure you put Python.h in your include path and the library in your library path.

Sign up to request clarification or add additional context in comments.

1 Comment

Now for all eternity, people will be able to solve this silly problem using Google :)
3

Try:

sudo apt-get install python2.6-dev

if your Python version is python2.6

1 Comment

It probably depends on what is being compiled, but plain sudo apt-get install python-dev worked well for me.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.