Somehow the body of my original email ( http://mail.opensolaris.org/pipermail/opensolaris-code/2010-November/008434.html) was lost, so here is the full email again...
Hi, I am trying to build qemu (http://www.qemu.org) but get the following messages when linking: ... LINK sparc-softmmu/qemu-system-sparc ld: fatal: register REG_G2 symbol used incompatibly: (file cpu-exec.o symbol 'env', file /lib/sparcv9/libm.so symbol '<SCRATCH REGISTER 2>'); ld: fatal: file processing errors. No output written to qemu-system-sparc collect2: ld returned 1 exit status gmake[1]: *** [qemu-system-sparc] Error 1 gmake: *** [subdir-sparc-softmmu] Error 2 ... elfdump shows that both g%2 and g%3 are referenced as undef in libm.so: ... [431] REG_G2 0x0000000000000000 REGI GLOB D 0 UNDEF ... [448] REG_G3 0x0000000000000000 REGI GLOB D 0 UNDEF ... According to the SPARCv9 ABI ( http://developers.sun.com/solaris/articles/sparcv9abi.html) both g2 and g3 are for applications only. I have not been able to locate any current libm sources, but suspect that the library is not buildt properly with -xregs=no%appl. The problem is present in both OpenSolaris 2009.06 and still present in Solaris 11 Express.
_______________________________________________ opensolaris-code mailing list opensolaris-code@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/opensolaris-code