Per completezza visto che oggi ho avuto il tempo per risolvere questa vecchia questione...
2013/8/10 Enrico Franchi <enrico.fran...@gmail.com>: > On Aug 10, 2013, at 7:40 PM, Pietro <peter.z...@gmail.com> wrote: > >> Come devo fare per fare il link a "grass/gis.h"? > > Non puoi linkare ad un header. Quello che devi fare e' linkare alla libreria > dinamica di GIS. per fare il link è sufficiente modificare il setup.py aggiungendo l'opzione "libraries" quando si instanzia la classe Extension, maggiori informazioni sono disponibili qui: http://docs.python.org/2/extending/building.html il mio setup.py è diventato: {{{ # -*- coding: utf-8 -*- from distutils.core import setup from distutils.extension import Extension from Cython.Distutils import build_ext import os GISBASE = os.getenv('GISBASE') INCLUDE_DIR = os.path.join(GISBASE, 'include') # include LIB_DIR = os.path.join(GISBASE, 'lib') # lib setup( cmdclass={'build_ext': build_ext}, ext_modules=[Extension("region", ["region.pyx"], include_dirs=[INCLUDE_DIR, ], libraries=['grass_gis'], library_dirs=[LIB_DIR, ], ) ] ) }}} Nel mio caso la variabile d'ambiente "GISBASE" è il path di installazione del programma, al suo interno si trovano le directory "include" con gli headers e "lib" con le libraries compilate, nell'esempio sopra riportato sto utilizzando la libreria libgrass_gis.so Buona giornata. Pietro _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python