Linker error "relocati,on truncated to fit"

Ole Streicher <[email protected]>
Newsgroups gmane.linux.debian.ports.s390
Message-ID <[email protected]>
Hi,

I am slowly re-starting the packaging of IRAF (still not officially
announced yet). When porting to s390x, I however run into a strange
error: IRAF needs a small piece of assembler code (kind-of longjump for
Fortan), which John Long gratefully ported to s390x two years ago:

zsvjmp_:
	stg     %r3,0(0,%r2)
	xc      0(8,%r3),0(%r3)
	xgr     %r3,%r3
	aghi    %r2,8
	j       __sigsetjmp@PLT

(Copyright John Long, MIT license).

However, when I try to link that (statically), I get the following error:

zsvjmp.s:16:(.text+0x16): relocation truncated to fit: R_390_PLT16DBL
against symbol `__sigsetjmp@@GLIBC_2.2' defined in .text section in
/lib/s390x-linux-gnu/libc.so.6
collect2: error: ld returned 1 exit status

As an uneducated guess, I removed the "@PLT", but then I get a complaint
about that this is missing.

Compiler (assembler) is gcc-6.3, with the current (sid) binutils. About
three years ago (when John wrote that code), this problem didn't happen.

Could anyone help me here what is wrong with that assembler?

Best regards

Ole
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.