[Python] Compilare con Python embedded: è cambiato qualcosa ultimamente?
Daniele Varrazzo
piro a develer.com
Mar 8 Nov 2011 15:56:50 CET
Ciao,
ho scritto un piccolo eseguibile che embedda python per testare come si
comporta una libreria in ambiente embedded:
http://code.google.com/p/py-setproctitle/source/browse/tests/pyrun.c
Non ha dato problemi mentre avevo ubuntu 10.10. Passando a 11.10 non
riesco più a compilarlo.
Lo compilo con qualcosa tipo:
gcc `python-config --cflags` `python-config --ldflags` -o pyrun
pyrun.c
ma al minimo, è sufficiente:
gcc -I/usr/include/python2.7 -lpython2.7 -o pyrun pyrun.c
Con Python 2.6 in Ubuntu 10.10, tutto ok. Quello che ottengo ora è:
/tmp/ccRbsrk3.o: In function `main':
pyrun.c:(.text+0x12): undefined reference to `Py_Initialize'
pyrun.c:(.text+0x37): undefined reference to `PyRun_SimpleFileExFlags'
pyrun.c:(.text+0x48): undefined reference to `Py_Finalize'
Ma "gcc -E" mostra che le funzioni vengono definite, mentre "nm -D
/usr/lib/libpython2.7.so" mostra che la libreria contiene i simboli
richiesti.
Quello che è cambiato è:
Python 2.6.6 -> 2.7.2
gcc 4.4.5 -> 4.6.1
Qualcuno sa cosa può essere cambiato?
--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com
Maggiori informazioni sulla lista
Python