https://sourceware.org/bugzilla/show_bug.cgi?id=33115

            Bug ID: 33115
           Summary: error while linking during Rust crosscompiling to
                    Solaris
           Product: binutils
           Version: 2.44
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: petr.sumbera at oracle dot com
  Target Milestone: ---

When is Rust cross compiled to Solaris using GNU binutils and GCC it ends with
below error as it was reported here:

https://github.com/rust-lang/rust/issues/137997

For now it was workaround via:

https://github.com/rust-lang/rust/issues/137997#issuecomment-2735565991

The issue can be reproduced with librustc_driver-46f53dc3e2248138.so from Rust
build:

$ wget http://kremilek.duckdns.org/rust/librustc_driver-46f53dc3e2248138.so.xz
$ xz -d ibrustc_driver-46f53dc3e2248138.so.xz
$ x86_64-solaris-gcc -o test librustc_driver-46f53dc3e2248138.so
/home/test/CROSS/cross/lib/gcc/x86_64-pc-solaris2.11/8.4.0/../../../../x86_64-pc-solaris2.11/bin/ld:
librustc_driver-46f53dc3e2248138.so: logb: invalid version 3 (max 0)
/home/test/CROSS/cross/lib/gcc/x86_64-pc-solaris2.11/8.4.0/../../../../x86_64-pc-solaris2.11/bin/ld:
librustc_driver-46f53dc3e2248138.so: error adding symbols: bad value
collect2: error: ld returned 1 exit status

--

For record. These are steps to build GCC cross compiler for Solaris:

#!/bin/bash
#wget
https://github.com/psumbera/solaris-sysroot/releases/download/v2025-02-21/solaris-11.4.42.111.0-i386-sysroot-v2025-02-21.tar.bz2
#wget https://ftp.gnu.org/gnu/binutils/binutils-2.44.tar.xz
#wget https://ci-mirrors.rust-lang.org/rustc/gcc-8.4.0.tar.xz
set -x
rm -rf cross sysroot binutils-2.44 gcc-8.4.0

mkdir sysroot && cd sysroot
tar xf ../solaris-11.4.42.111.0-i386-sysroot-v2025-02-21.tar.bz2
cd ..

tar xf binutils-2.44.tar.xz
cd binutils-2.44
./configure --prefix=/home/test/CROSS/cross --target=x86_64-pc-solaris2.11
--program-prefix="x86_64-solaris-" --with-sysroot=/home/test/CROSS/sysroot
make && make install
cd ..

export PATH=/home/test/CROSS/cross/bin:$PATH
tar xf gcc-8.4.0.tar.xz
mkdir gcc-8.4.0-build
cd gcc-8.4.0-build
CFLAGS='-fPIC' CXXFLAGS='-fPIC' CXXFLAGS_FOR_TARGET='-fPIC'
CFLAGS_FOR_TARGET='-fPIC' "../gcc-8.4.0/configure"
--prefix="/home/test/CROSS/cross" --target=x86_64-pc-solaris2.11
--program-prefix="x86_64-solaris-" --with-sysroot=/home/test/CROSS/sysroot
--with-gnu-as --with-gnu-ld --disable-nls --disable-libgomp
--disable-libquadmath --disable-libssp --disable-libvtv --disable-libcilkrts
--disable-libada --disable-libsanitizer --disable-libquadmath-support
--disable-shared --enable-tls
make && make install

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to