pixman / tls link time issue
Dagobert Michelsen
dam at opencsw.org
Mon Jul 11 14:20:32 CEST 2016
Hi Riccardo,
Am 06.07.2016 um 10:17 schrieb Riccardo Mottola <rmottola at opencsw.org>:
> Dagobert Michelsen wrote:
>> Hi Riccardo,
>>
>> Am 04.07.2016 um 10:04 schrieb Riccardo Mottola<rmottola at opencsw.org>:
>>> >the pixman package would be "yours".. I'd like to fix it, cane we collaborate? I don't want to hurt anyone feet.
>> Sure, in general I don’t mind at all unless you break it;-)
>
> Let's fix it in case :) I try to be careful.. aftger all we are few people and the receipes seems to "age" and break with time.
> In this case however, a reebuild shows the issue, but also the old package was already broken on soloaris9, so I just discovered an issue, didn't break anything yet.
>
> I did a minor commit to bring up-todate. I removed the and added architectures.
>
> How do I fix this, on the x86 version?
>
> gmake[1]: Leaving directory `/home/rmottola/opencsw/pixman/trunk'
> gmake[1]: Entering directory `/home/rmottola/opencsw/pixman/trunk'
> /home/rmottola/opencsw/.buildsys/v2/gar//gar.conf.mk:559: *** The ISA 'amd64' can not be build on this kernel with the arch 'i386'. Stop.
> gmake[1]: Leaving directory `/home/rmottola/opencsw/pixman/trunk'
>
> I thought it was implied that solaris9x can't build AMD64!
>
> BUILD64_LIBS_ONLY = 1
>
> Is correct, IIRC!
Yes. The building is a bit complex: in the early days when we had packages for
Solaris 8 and 9 there was a trick to allow using the packages on Solaris 10 by
adding the amd64 binaries built on Solaris 10 on Solaris 8 and 9 packages. As
they were not used on 8 and 9 this won’t do any harm but the package could be
used anyway on Solaris 10 with full functionality. Now that we have enough disk
space and Solaris 8 and 9 are old and we always have additional Solaris 10
packages this behaviour is considered „legacy“ and no amd64 should be included
on Solaris 8 and 9 x86 any more. If solaris10-i386 is in PACkAGING_PLATFORMS
then this is a bug in GAR.
>> What happens?
>
> On solaris9 sparc, after the succesful build, to an ldd:
>
> ldd -r work/solaris9-sparc/build-isa-sparcv9/pixman-0.22.2/pixman/.libs/libpixman-1.so
> /usr/lib/secure/64/s9_preload.so.1
> libm.so.1 => /usr/lib/64/libm.so.1
> libc.so.1 => /usr/lib/64/libc.so.1
> libdl.so.1 => /usr/lib/64/libdl.so.1
> /usr/platform/SUNW,SPARC-Enterprise-T5220/lib/sparcv9/libc_psr.so.1
> symbol not found: __tls_get_addr (work/solaris9-sparc/build-isa-sparcv9/pixman-0.22.2/pixman/.libs/libpixman-1.so)
>
> ldd -r work/solaris9-sparc/build-isa-sparcv8/pixman-0.22.2/pixman/.libs/libpixman-1.so
> /usr/lib/secure/s9_preload.so.1
> libm.so.1 => /usr/lib/libm.so.1
> libc.so.1 => /usr/lib/libc.so.1
> libdl.so.1 => /usr/lib/libdl.so.1
> /usr/platform/SUNW,SPARC-Enterprise-T5220/lib/libc_psr.so.1
> symbol not found: __tls_get_addr (work/solaris9-sparc/build-isa-sparcv8/pixman-0.22.2/pixman/.libs/libpixman-1.so)
>
>
> On the partial build on solaris9x, where i386 built, it is consistent:
> ldd -r work/solaris9-i386/build-isa-i386/pixman-0.22.2/pixman/.libs/libpixman-1.so
> libm.so.1 => /usr/lib/libm.so.1
> libc.so.1 => /usr/lib/libc.so.1
> libdl.so.1 => /usr/lib/libdl.so.1
> symbol not found: ___tls_get_addr (work/solaris9-i386/build-isa-i386/pixman-0.22.2/pixman/.libs/libpixman-1.so)
>
> As a test, I compiled everything with GCC - but I get the same error.
> Perhaps we are missing some linker flag? I tried to look on the internet, other had this problem also on non-solaris, but found no solutions.
>
> I'm weary to update pixman: I don't want to enter a dependency hell updating stuff on solaris9. First rebuilding this package "fixed" would be preferrable!
>
> A "fresh" rebuild on solaris10s is perfectly fine...
>
> ldd -r work/solaris10-sparc/build-isa-sparcv9/pixman-0.22.2/pixman/.libs/libpixman-1.so
> libm.so.2 => /lib/64/libm.so.2
> libc.so.1 => /lib/64/libc.so.1
> /platform/SUNW,SPARC-Enterprise-T5220/lib/sparcv9/libc_psr.so.1
You need to get deeper in multithreading on Solaris 9, I haven’t looked into it
in more detail, feel free to do more investigation.
Best regards
— Dago
--
"You don't become great by trying to be great, you become great by wanting to do something,
and then doing it so hard that you become great in the process." - xkcd #896
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.opencsw.org/pipermail/users/attachments/20160711/2fa8c3d8/attachment.asc>
More information about the users
mailing list