On Thu, Dec 31, 2009 at 19:25, Antonio Diaz Diaz <[email protected]> wrote: > rupert THURNER wrote: >>> >>> You can replace "#include <stdint.h>" with "#include <inttypes.h>". Both >>> headers are C99 provided as extensions in C++, but for some reason >>> solaris >>> only provides inttypes.h. >> >> is there any chance this could go in the code so we do not have to patch >> it? > > I'm afraid not. inttypes.h is larger than stdint.h, includes stdint.h and is > just as non-standard C++ as stdint.h. Making this change will surely break > compilation on some other system. > > >>> The remaining errors are caused by lzlib not being installed in your >>> system. >> >> after patching the include files, linking fails with: >> >> c++ -shared -Wl,--soname=liblz.so.0 -o liblz.so.0.8-rc1 sh_decoder.o >> sh_encoder.o sh_lzlib.o >> /usr/ccs/bin/ld: illegal option -- - >> ld: warning: option -o appears more than once, first setting taken >> usage: ld [-6:abc:d:e:f:h:il:mo:p:rstu:z:B:CD:F:GI:L:M:N:P:Q:R:S:VY:?] >> file(s) > > As lacos has already pointed out, this is because you don't use the GNU > linker but the platform linker, and the platform linker chokes on > "--soname=liblz.so.0". Just try "configure --disable-shared". > > BTW, I am thinking about disabling the build of shared libraries by default. > > One more thing. Plzip 0.1 only works with lzlib 0.7. The next version of > plzip (0.2) will only work with lzlib 0.8-rc2 or newer. >
thanks for the hint! we compile quite a lot of packages and most of them produce shared libraries, and none of them uses the gnu linker, see http://www.opencsw.org/packages. maybe there is a chance to adjust the configure so it takes care of the differences, linker and header files? why did you choose to implement it in c++ btw? rupert. _______________________________________________ Lzip-bug mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/lzip-bug
