On Wed, Jul 7, 2010 at 12:34 AM,  <[email protected]> wrote:
> More precisely, the constructor provides C source code to access data
> and metadata with files ReadIM{7,x}.{c.h}.
> I wrote a tiny ctypes wrappers in order to have a object-oriented
> class in python that handling reading the data files written by the
> constructor software.
>
> One issue is that ReadIM7.h includes zlib.h. On linux, it is easy to
> install zlib-dev package. All is simple, as it is installed in
> standard repertory. On windows of course no standards. How would you
> then proceed? Do I have to distribute zlib.h, and also zconf.h,
> zlib.lib, libz.a and libz.dll.a needed to get it work ?

Three solutions:
 - ask your users to build the software and install zlib by
themselves. On windows, I am afraid it means you concretely limit your
userbase to practically 0.
 - build zlib as part of the build process, and keep zlib internally.
 - include a copy of the zlib library (the binary) in the tarball.

>
> Other issue: with all these files in ./src, I have the following
> configuration:
>     ext = Extension('_im7',
>         sources=['src/ReadIM7.cpp', 'src/ReadIMX.cpp'],
>         include_dirs=['src'],\
>         libraries=['zlib',],\
>         library_dirs=['src'],\
>         define_macros=[('_WIN32', None), ('BUILD_DLL', None)], \
>         extra_compile_args=['-ansi', '-pedantic', '-g', '-v'])
>
> it builds a _im7.pyd file that ctypes is not able to load as it
> expects a _im7.dll file with
> ctypes.cdll.loadlibrary('_im7')...

You cannot build a library loadable with ctypes with distutils nor
numpy.distutils. You need to implement it in distutils, or copy the
code from one of the project which implemented it

cheers,

David
_______________________________________________
NumPy-Discussion mailing list
[email protected]
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to