On 12/11/2014 6:31 PM, DeTracey, Brendan wrote:
Hi,

I am trying to build cdo (https://code.zmaw.de/projects/cdo) from source and 
have a common problem:
*** Warning: This system can not link to static lib archive 
/usr/local/lib/libsz.la.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.

I looked at my build of libsz (from hdf's szip 
http://www.hdfgroup.org/HDF5/release/obtain5.html#extlibs ) and even though I 
specified --enable-shared it did not build the shared libraries. Why is this?

I looked at libsz.la and manually built a dll from the object files:
gcc -shared -o libsz.dll rice.o sz_api.o encoding.o
but copying the resulting libsz.dll to /use/local/lib is not enough for the cdo 
build to recognize it as the shared library. It still tries to link to libsz.la
Do I need  *.dll.a for libsz?

yes


How do I do this and where do I put the final libsz.dll and corresponding 
libsz.dll.a?

gcc -shared -Wl,--enable-auto-import -Wl,--enable-auto-image-base \
   -o cygsz.dll -Wl,--out-implib=libsz.dll.a  \
    rice.o sz_api.o encoding.o

cygsz.dll     in /usr/local/bin
libsz.dll.a   in /usr/local/lib


Pointing me to any documentation would be appreciated. All I have found is 
Building and Using DLL's in the Cygwin users manual.

same as reported
https://cygwin.com/cygwin-ug-net/dll.html#dll-build

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Reply via email to