Re: Possible problems with the current CVS version

Thorsten Glaser <[email protected]> Tue, 19 Aug 2014 09:36:54 +0200 (CEST)
Newsgroups gmane.linux.lib.dietlibc
Message-ID <[email protected]>
On Tue, 19 Aug 2014, Steven Honeyman wrote:

> Compiling dietlibc without modification (just "make -j1 all"), I get
> lots of these errors:
> /usr/bin/ld: error in /opt/diet/lib-x86_64/dyn_stop.o(.eh_frame); no
> .eh_frame_hdr table will be created

Indeed.

> program, and *compiles* dash, but trying to run it I get:
> 
> $ src/dash
> sh: 0: Illegal number: 1

Must be an issue with dash ;-)

Compiling mksh from CVS gets me:

/usr/bin/ld: error in /home/tglase/dietlibc/bin-x86_64/dyn_stop.o(.eh_frame); no .eh_frame_hdr table will be created.

But the resulting binary passes its testsuite, modulo the
one expected-fail. This is on Debian sid.

Same with i386:
/usr/bin/ld: error in /home/tglase/dietlibc/bin-i386/dyn_stop.o(.eh_frame); no .eh_frame_hdr table will be created.
and no unexpected testsuite failures.

The bug in dietlibc CVS about ssize_t is still not fixed, by the way:
/home/tglase/mbsd/mksh/shf.c:458:3: warning: format '%zd' expects argument of type 'signed size_t', but argument 4 has type 'ssize_t' [-Wformat=]
Fix is in the Debian dietlibc packaging.

Of course, there does seem to be something wrong here.


I can’t build dash at all:

/home/tglase/dietlibc/bin-x86_64/diet -Os gcc -L/home/tglase/dietlibc/bin-x86_64 -DHAVE_CONFIG_H -I. -I..  -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -Wall -g -O2 -MT test.o -MD -MP -MF .deps/test.Tpo -c -o test.o `test -f 'bltin/test.c' || echo './'`bltin/test.c
bltin/test.c: In function ‘test_file_access’:
bltin/test.c:490:2: warning: implicit declaration of function ‘faccessat’ [-Wimplicit-function-declaration]
  return !faccessat(AT_FDCWD, path, mode, AT_EACCESS);
  ^
bltin/test.c:490:20: error: ‘AT_FDCWD’ undeclared (first use in this function)
  return !faccessat(AT_FDCWD, path, mode, AT_EACCESS);
                    ^
bltin/test.c:490:20: note: each undeclared identifier is reported only once for each function it appears in
bltin/test.c:490:42: error: ‘AT_EACCESS’ undeclared (first use in this function)
  return !faccessat(AT_FDCWD, path, mode, AT_EACCESS);
                                          ^
bltin/test.c:491:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
Makefile:330: recipe for target 'test.o' failed


But then, it’s not very good or portable, anyway. You’re better off
with mksh. (Disclaimer: I’m the mksh maintainer, and mksh has proven
to be a good toolchain testsuite…)

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg