libz.a, was [uClibc]static zlib problem in x86 dev image
Erik Andersen
andersen at codepoet.org
Sat Feb 15 10:34:22 UTC 2003
On Thu Feb 13, 2003 at 11:31:22AM +0100, Peter S. Mazinger wrote:
> > Could you check if this problem is still present in
> > today's development system image? I rebuilt it this
> > morning with uClibc 0.9.18. I also added most of the
> > things you asked for (diffutils,patch, flex, bison,
> > ed,file, etc)
> Thanks for the additions.
>
> libz.a has the same problem. If I rebuild zlib-1.1.4
# nm -D libz.so.1.1.4 | grep 64
U fopen64
# nm -D libuClibc-0.9.18.so | grep fopen64
0001d350 T fopen64
I fail to see any problem here.... libz uses fopen64 and uClibc
provides fopen64. shrug.
> Environment when it happens:
> modutils insmod.static version built against dietlibc (I use mainly
> unmodified, only updated redhat rpm's for dietlibc,zlib and modutils)
>
> First I build dietlibc-0.21 and install.
> After that I try to build modutils-2.4.22 with static insmod built against
> dietlibc. If I use your libz.a, than it fails, if I rebuild libz.a
> on this system with the options above, then it works.
Wait a minute!!! You are trying to use the uClibc development
system's libz.a library (that was of course compiled against
uClibc) in conjunction with dietlibc?!?!? You realize of course
that is _terribly_ terribly wrong and if it happens to work at
all it just means you have a ticking time bomb. Binary
incompatiblities _will_ crash your application. Fundamental data
types and structures are very different between different C
libraries.
If you want to compile stuff with dietlibc then you should use
only libraries that were compiled with dietlibc. You cannot EVER
mix and match libraries compiled using different C libraries.
-Erik
--
Erik B. Andersen http://codepoet-consulting.com/
--This message was written using 73% post-consumer electrons--
More information about the uClibc
mailing list