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