pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bzip 2 fails to build on IRIX 6.5



Am 10.09.2019 um 22:44 schrieb Roland Illig:
>> /opt/local/gcc-8.2.0/bin/ld [...] -rpath /usr/pkg/lib
>> -soname libbz2.so.1 -set_version sgi1.0 [...]
>>
>> /opt/local/gcc-8.2.0/bin/ld: sgi1.0: No such file: No such file or directory
>
> I can reproduce this with /usr/bin/ld from NetBSD 8, which is from
> binutils 2.27. That version doesn't know the -set_version option,
> therefore it parses the command line as:
>
>     ld -s -e t_version sgi1.0
>
> which, translated to long options, is:
>
>     ld --strip-all --entry t_version sgi1.0
>

The native IRIX ld supports the -set_version option. In hindsight this
is obvious since the GNU linker would not use an underscore in its
option names.

@joerg: Is it possible (just as a quick local workaround) to tell
cwrappers to ignore the -set_version option including its string
argument? In the pkglint test code I found a little hint:

    CWRAPPERS_TRANSFORM.cc+= rm-optarg:-set_version
    CWRAPPERS_TRANSFORM.cc+= rm-optarg:-Wl,-set_version

The rm-optarg command is only supported by the old wrapper framework and
additionally requires that the option and its argument are merged into a
single word (see mk/wrapper/gen-transform.sh), so this doesn't work. A
variant that does work (although ugly) is:

    CWRAPPERS_TRANSFORM.cc+=        rm:-Wl,-set_version
    CWRAPPERS_TRANSFORM.cc+=        rm:-Wl,sgi1.0

Independent of any workaround, the proper solution would be to research
why GCC 8.2.0 thinks that its own ld would be the native IRIX ld.


Home | Main Index | Thread Index | Old Index