Subject: strace issues [was Re: am-utils and NIS]

From: Charles Lepple <[email-masked]>
Date: Mon, 03 May 1999 02:10:48 +0000

[I'm cc'ing this to the list in case anyone else has seen this behaviour
in strace]

Ralf Baechle wrote:
[stuff about ypcat failing]
> Can you send me the strace output of the failing command?

One of these days I'll manage to compile something without incident...

I grabbed the strace CVS module, and tried to build it. Configure
identified a 'mips-unknown-linux', and things went fine until time.c:

gcc -Wall -DHAVE_CONFIG_H   -I. -Ilinux/mips -I./linux/mips -Ilinux
-I./linux -g -O2 -c time.c
/usr/include/asm/timex.h: In function `get_cycles':
In file included from /usr/include/linux/timex.h:138,
                 from time.c:36:
/usr/include/asm/timex.h:36: warning: implicit declaration of function
`read_32bit_cp0_register'
/usr/include/asm/timex.h:36: `CP0_COUNT' undeclared (first use this
function)
/usr/include/asm/timex.h:36: (Each undeclared identifier is reported
only once
/usr/include/asm/timex.h:36: for each function it appears in.)
make: *** [time.o] Error 1
<<<<

So I looked up the offending function, and added '#include
<asm/mipsregs.h>' before the other Linux-specific includes. This
produced an executable, but when I ran 'strace -o /tmp/ypcat -f ypcat
group', the strace output ended like this:

6341  gettimeofday({925689555, 977502}, NULL) = 0
6341  getpid()                          = 6341
6341  socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4
6341  getpid()                          = 6341
6341  bind(4, {sin_family=AF_INET, sin_port=htons(1005),
sin_addr=inet_addr("0.0
.0.0")}, 16) = 0
6341  ioctl(4, 0x667e, 0x7ffffb18)      = 0
<<<<

No exit indication, and no output from the ypcat program, either. The
error code from strace was zero.

The kernel source and strace were both pulled from CVS about an hour
ago.

Any ideas?

-- 
Charles Lepple
System Administrator, Virginia Tech EE Workstation Labs
[email-masked] || http://www.foo.tho.org/charles/

---

From: Ulf Carlsson <[email-masked]>
Date: Sat, 8 May 1999 23:51:28 +0200

> gcc -shared -Wl,-soname -Wl,libamu.so.1 -o .libs/libamu.so.1.0.1
> misc_rpc.lo mount_fs.lo mtab.lo nfs_prot_xdr.lo util.lo wire.lo
> xdr_func.lo xutil.lo transputil.lo mtabutil.lo mountutil.lo umount_fs.lo
> collect2: ld terminated with signal 6 [Aborted]
> make[2]: *** [libamu.la] Error 1
> make[2]: Leaving directory
> `/usr/src/redhat/BUILD/am-utils-6.0a16/libamu'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/src/redhat/BUILD/am-utils-6.0a16'
> make: *** [all-recursive-am] Error 2

I don't know if you've solved this problem, but I bet you're using binutils
2.9.1, install the old 2.8.1 and everything will (probably) work just fine.

I'm trying to get back to the cutting edge of my mailbox today :-)

- Ulf