Philip Semanchuk <[EMAIL PROTECTED]> writes: > On Oct 23, 2008, at 11:36 AM, J Kenneth King wrote: > >> >> Hey everyone, >> >> I'm working on a python extension wrapper around Rob Hess' >> implementation of a SIFT feature detector. I'm working on a >> computer-vision based project that requires interfacing with Python at >> the higher layers, so I figured the best way to handle this would be >> in >> C (since my initial implementation in python was ungodly and slow). >> >> I can get distutils to compile the extension and install it in the >> python path, but when I go to import it I get the wonderful exception: >> >> ImportError: /usr/lib/python2.5/site-packages/pysift.so: undefined >> symbol: _sift_features > > > Kenneth, > You're close but not interpreting the error quite correctly. This > isn't an error from the compiler or preprocessor, it's a library > error. Assuming this is dynamically linked, your OS is reporting that, > at runtime, it can't find the library that contains _sift_features. > Make sure that it's somewhere where your OS can find it.
This is basically what I was looking for help with. So far the project directory is: /pysift /sift .. /include .. sift.h /src .. sift.c /src pysift.c setup.py I thought I could just #include "sift.h" in pysift.c as long as distutils passed the right -I path to gcc. Maybe I should compile the sift code as a shared object and link it to my extension? How would I get distutils to build the makefile and tell gcc how to link it? Thanks for the reply. Python has spoiled me and my C is rather rusty. :) -- http://mail.python.org/mailman/listinfo/python-list