From: Evan K. <ev...@ek...> - 2009-11-06 04:47:41
|
Hi all, I'm trying to write a Python binding, using SWIG, to CLD (http://hail.wiki.kernel.org/index.php/CLD). I was hoping to start with the "truly lazy" approach described on the SWIG tutorial, and started with a trivial interface file like this: %module cldc %{ #define SWIG_FILE_WITH_INIT #include "../include/cldc.h" %} %include "../include/cldc.h" I then tried compiling this using swig, but get an error like so: [evan@t500 py (master)]$ swig -python cldc.i ../include/cldc.h:33: Error: 'cldc_call_opts_u_get' is multiply defined in the generated module. ../include/cldc.h:28: Error: Previous declaration of 'cldc_call_opts_u_get' Everything I've found online about the meaning of this error is discussing SWIG bindings to C++ code, where a method/function is defined in multiple namespaces, which isn't the case here -- this is vanilla C code. I think that SWIG is choking on the the header file which is valid, but I'm not confident enough with my SWIG knowledge to say for sure. For reference, I'm using SWIG 1.3.40, and I've pastebinned the cldc.h file at http://paste.pocoo.org/show/148964/ . The git repo for the project (just clone git://git.kernel.org/pub/scm/daemon/cld/cld.git ) is pretty small if you want to test it out yourself. Thanks! -- Evan Klitzke <ev...@ek...> :wq |