Bug#291609: libc6: Missing funcions in libresolv
On Fri, Jan 21, 2005 at 05:07:49PM -0300, Martin Ferrari wrote:
> Package: libc6
> Version: 2.3.2.ds1-20
> Severity: normal
>
>
> I'm using functions defined in arpa/nameser.h, undocumented in libc, but
> explained in chapter 12 of O'Reilly's DNS & BIND (ISBN: 0-596-00158-4).
> I do think that this lack of documentation is also a bug.
>
> They are included in /usr/lib/libresolv.a from libc6-dev package, but
> not in libresolv.so. Below is included a small example program to
> demonstrate this.
>
> This is the error:
>
> $ gcc -Wall -pedantic test.c -lresolv -o test
> /tmp/cc6jU6ZL.o(.text+0xa4): In function `main':
> : undefined reference to `__ns_initparse'
> /tmp/cc6jU6ZL.o(.text+0x124): In function `main':
> : undefined reference to `__ns_parserr'
> /tmp/cc6jU6ZL.o(.text+0x190): In function `main':
> : undefined reference to `__ns_name_uncompress'
> collect2: ld returned 1 exit status
> $
>
> But this works:
>
> $ gcc -Wall -pedantic test.c /usr/lib/libresolv.a -o test
> $
FYI, they are in libresolv.so, but deliberately not exported. Static
linking ignores the export checks.
Whether they should be or not, I have no opinion.
--
Daniel Jacobowitz
Reply to: