Embedding Python into C set up issues

steven.flolid at gmail.com steven.flolid at gmail.com
Mon Mar 14 12:52:46 EDT 2016


Good morning!

I have been working with Python for the last few months. I have created a script that I want to embed into a C++ environment, specifically CDT for eclipse. I have read the https://docs.python.org/2/extending/index.html and understand the ideas and differences between the two languages. 

However, I am having great trouble getting Py_Initialize() to work in the both CDT and Visual Studio 2015. I have as a starting point a simple C program that prints hello world then calls py_initialize and then prints another line of text to the screen. Calling Py_initialize causes the script to exit with exit code 1. I am at a loss as to why this is happening. I have read the documentation about Py_Initialize() calling exit when it should raise an error so I understand it may be difficult to debug this issue.

Here are the details for my system:

Windows 7 64bit running python 2.7.11 using Visual Studio Community Edition 2015. 

Python is installed in the default folder of C:\Python27 and is the only copy of python installed.

Path is has C:\Python27 and C:\Python27\DLLs appended to it in that order.

PYTHONPATH is set to C:\python27lib

In visual studio:

C++/Additional Include Directories has C:\Python27\include appended to it

Linker/Additional Library Directories has C:\Python27\libs appended to it

Linker/Additional Dependencies has python27.lib appended to it



Here is the source code:

#include <Python.h>
#include <stdio.h>

int main() {
	printf("hello world");
	Py_Initialize();
	printf("hello world please");
}

I feel like I must be missing something, I just don't know what it is. Any documentation or help would be much appreciated.

Sincerely,

Steven Flolid



More information about the Python-list mailing list