[Numpy-discussion] CTypes: How to incorporate a library with shared library module?

Robert Kern robert.kern@gmail....
Tue Feb 12 00:33:12 CST 2008

On Feb 12, 2008 12:14 AM, Damian Eads <eads@soe.ucsc.edu> wrote:
> David Cournapeau wrote:
> > On Mon, 2008-02-11 at 22:50 -0700, Damian Eads wrote:
> >> Dear Lou,
> >>
> >> You may want to try using distutils or setuputils, which makes compiling
> >> extensions much easier. It does the hard work of finding out which flags
> >> are needed to compile extensions on the host platform. There are many
> >> examples on the web on how to use distutils to build C extensions
> >> (http://docs.python.org/ext/building.html).
> >
> > Unfortunately, this does not work. Distutils only knows how to build
> > python extensions, not shared libraries. Depending on the platform, this
> > is not the same thing, and mac os X is such a platform where both are
> > not the same.
> >
> > cheers,
> >
> > David
> Really? distutils generates .so files for me, which I assume are shared
> libraries. FYI: I'm running Fedora 8 on an x86. Does distutils not
> generate a shared library on a mac?

As to David's point, yes, distutils makes a .so shared library on
Macs. This is not the same thing as a dynamic library (on Macs) which
is what ctypes needs (on Macs), IIRC. There is a subtle, but important
difference between the two.

Robert Kern

"I have come to believe that the whole world is an enigma, a harmless
enigma that is made terrible by our own mad attempt to interpret it as
though it had an underlying truth."
  -- Umberto Eco

More information about the Numpy-discussion mailing list