"Markus Franz" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > Hi! > > I wanted to run some Python code from inside a C program, so I did it > like it was explained in the Python manual: > > #include <Python.h> > int main(int argc, char *argv[]) { > Py_Initialize(); > PyRun_SimpleString("print 'Hallo World!'\n"); > Py_Finalize(); > return 0; > } > > Then I tried to compile this by using the command: gcc halloworld.cpp > But everytime I get the following errors: > > /home/mmf/tmp/ccVD2V4h.o(.text+0x1d): In function `main': > : undefined reference to `Py_Initialize' > /home/mmf/tmp/ccVD2V4h.o(.text+0x2a): In function `main': > : undefined reference to `PyRun_SimpleString' > /home/mmf/tmp/ccVD2V4h.o(.text+0x32): In function `main': > : undefined reference to `Py_Finalize' > /home/mmf/tmp/ccVD2V4h.o(.eh_frame+0x11): undefined reference to > `__gxx_personality_v0' > collect2: ld returned 1 exit status > > What am I doing wrong? > > Markus
This works for me on Redhat 9: g++ x.cpp -o x -I/usr/include/python2.2 -pthread -lm -ldl -lutil /usr/lib/python2.2/config/libpython2.2.a I discovered what libraries to link to by asking distutils: import distutils.sysconfig distutils.sysconfig.get_config_var('LIBS') distutils.sysconfig.get_config_var('SYSLIBS') g++ links to the right libraries for .cpp files. -Mark -- http://mail.python.org/mailman/listinfo/python-list