[OpenAFS-devel] Compiling 1.3.74 on IRIX 6.5 6.5.19m

Harald Barth haba@pdc.kth.se
Thu, 09 Dec 2004 11:31:52 +0100 (MET)


We happened to find this strange bug on IRIX:

$ /bin/uname -R
6.5 6.5.19m

Linking of the libafs*.o kernel modules goes wrong like this:

> /usr/bin/ld -n32 -IPA -elf -r -d -G 0 -o libafs.nonfs.o \
>         afs_atomlist.o afs_lhash.o afs_analyze.o afs_axscache.o afs_buffer.o afs_callback.o afs_cbqueue.o afs_cell.o afs_chunk.o afs_conn.o afs_daemons.o afs_dcache.o afs_dir.o afs_dynroot.o afs_init.o afs_lock.o afs_mariner.o afs_memcache.o afs_osi.o afs_osidnlc.o afs_osi_alloc.o afs_osi_pag.o afs_osi_uio.o afs_osi_vget.o afs_segments.o afs_server.o afs_stat.o afs_user.o afs_util.o afs_vcache.o afs_vnop_access.o afs_vnop_attrs.o afs_vnop_create.o afs_vnop_dirops.o afs_vnop_fid.o afs_vnop_flock.o afs_vnop_link.o afs_vnop_lookup.o afs_vnop_open.o afs_vnop_read.o afs_vnop_readdir.o afs_vnop_remove.o afs_vnop_rename.o afs_vnop_strategy.o afs_vnop_symlink.o afs_vnop_write.o afs_volume.o afsaux.o Kvice.xdr.o xdr_arrayn.o xdr_array.o xdr_int32.o xdr_int64.o Kvice.cs.o fcrypt.o rx.o rx_rdwr.o rx_clock.o rx_event.o rx_globals.o rx_kmutex.o rx_knet.o rx_kcommon.o rx_misc.o rx_null.o rx_getaddr.o rx_packet.o rx_multi.o xdr_rx.o Kvldbint.cs.o Kvldbint.xdr.o Kcallback.ss.o Krxstat.ss.!
 o K
>  rxstat.xdr.o rxstat.o crypt_conn.o AFS_component_version_number.o afs_exporter.o rxkad_client.o rxkad_common.o xdr_afsuuid.o xdr.o afs_uuid.o base64.o osi_groups.o osi_idbg.o osi_file.o osi_inode.o osi_misc.o osi_sleep.o osi_vm.o osi_vnodeops.o afs_call.o afs_pioctl.o osi_vfsops.o
>         /usr/bin/../../usr/lib32/cmplrs/ld32 -from libafs.nonfs.o.ipaa05OAF/linkopt.1409679

But make did not detect this and continued...

After some experiments I concluded that this seems to be an
incompability between SGI's ld and GNU's make. But I don't know why.
Frustrating. So I used SGI's make and now it works. Just wanted you to
know in case you run into the same problem.

Harald.