BIND 8.2.1 compile problems on SCO3.2v4.2

Joseph S D Yao jsdy at cospo.osis.gov
Fri Oct 1 20:45:36 UTC 1999


> I am attempting to compile bind on SCO3.2v4.2.  I've made numerous changes
> to affect positive changes to the build, but I have now reached a
> stand-still.

What is the current version of SCO Unix?  I see builds for 4.2 and 5.0,
but not 3.2.  The SCO Web page is no help - UnixWare 7 vs SCO UnixWare
2.1 vs. SCO Open Server 5 vs. ... ?

> At some point in the build, something makes libbind_r.a, however, it makes
> it wrong and later in the build, when ar is used to add object files to this
> library, it fails with the following:
> 
>         ar cru ../../../lib/libbind_r.a  nsap_addr.o inet_addr.o inet_ntop.o
> inet_pton.o  inet_ntoa.o inet_neta.o inet_net_ntop.o inet_net_pton.o
> inet_cidr_ntop.o inet_cidr_pton.o  inet_lnaof.o inet_makeaddr.o inet_netof.o
> inet_network.o  ; \
>         : ../../../lib/libbind_r.a )
> ar: malformed archive (at 2147482479)
...

Interesting.  Does it only do this for the 'inet' directory, or is this
the middle of several?
(SUBDIRS = resolv irs isc bsd inet nameser dst cylink dnssafe)

2147482479 16op
7FFFFB6F

I wonder whether it hit a file size limit?

...
> When I look at libbind_r.a after the build, it's only 8 bytes in length,
> containing: 21 3c 61 72 63 68 3e 0a ("!<arch>", with the last character
> being unprintable).
> 
> Interestingly, if I try to run the ar command to manually add any of the
> objects that failed to be added, I get the same "malformed archive" error,
> as above.  However, if I zero the file and attempt to run ar on the lib
> again, it succeeds without error.

Object files are added to the archive file from the above SUBDIRS, in
order.  Again, possibly a file size limit.

My first thought was that you might have incompatible versions of 'ar'
and 'ranlib'.  The "!<arch>" is the header for modern [ELF, I think]
versions of 'ar'.  Please do this: use 'ar' to make an archive.  Do an
'od -c (archive-name) | more' to see whether that string is in fact at
the start of the archive.  Then do a 'ranlib (archive-name)'.  Then do
the 'od' again, to see (a) if that string is there and (b) whether
there is anything else after the string!

If, in fact, it is 'ranlib' that is truncating the archive, you will
have to go back to the port/sco??/Makefile.set and set "RANLIB" to
"false".  Then go back, do a 'make clean', and start over again from
the top.

--
Joe Yao				jsdy at cospo.osis.gov - Joseph S. D. Yao
COSPO/OSIS Computer Support					EMT-B
-----------------------------------------------------------------------
This message is not an official statement of COSPO policies.


More information about the bind-users mailing list