How can I avoid the dreaded "cannot compute suffix of object files"?

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

 



I'm trying to build gcc 4.3.2 on a Sun Blade 1000 running Solaris 10 03/05 (there are good reasons for wanting to use an older release of Solaris 10).

I've patched




1)  Patched the included gcc 3.4.3 with Sun's latest patch for gcc (123647-04)

2) Set environment variables.

$ export LD_OPTIONS=-R/usr/local/gcc-4.3.4/lib -L/usr/local/gcc-4.3.4/lib
$ export LDFLAGS=-R/usr/local/gcc-4.3.4/lib -L/usr/local/gcc-4.3.4/lib

3) GMP related things.

* export ABI=32
* Configured gmp with a prefix of /usr/local/gcc-4.3.2
* Built gmp
* Verified gmp passes all tests.
* Installed gmp to /usr/local/gcc-4.3.2


4) MPFR related things.

* Configured mpfr with a prefix of /usr/local/gcc-4.3.2
* Built mpfr
* Verified mpfr passes all tests.
* Installed mprf to /usr/local/gcc-4.3.2

5) GCC related things.

../gcc-4.4.3/configure --prefix=/usr/local/gcc-4.4.3 --with-mpfr-lib=/usr/local/gcc-4.4.3/lib --with-mpfr-include=/usr/local/gcc-4.4.3/include --with-build-time-tools=/usr/ccs/bin --with-gmp=/usr/local/gcc-4.4.3 --enable-languages=c,c++,fortran --with-boot-ldflags="-R/usr/local/gcc-4.4.3/lib -L/usr/local/gcc-4.4.3/lib"


The sate 2 build fails with the error message "cannot compute suffix of object files", which is a result of it being unable to find the path to the mpfr library. This is despite the fact I've done everything I can think of to get gcc to look in /usr/local/gcc-4.4.3/lib for the mpfr libraries.

A Google on this message shows 901,000 hits. Adding 'gcc' into the search term finds this drops to 761,000, so I'm far from the only one to get this message.

The appropriate config.log

/patches/builds/build-gcc/sparc-sun-solaris2.10/libgcc/config.log

Target: sparc-sun-solaris2.10
Configured with: ../gcc-4.4.3/configure --prefix=/usr/local/gcc-4.4.3 --with-mpfr-lib=/usr/local/gcc-4.4.3/lib --with-mpfr-include=/usr/local/gcc-4.4.3/include -- with-build-time-tools=/usr/ccs/bin --with-gmp=/usr/local/gcc-4.4.3 --enable-languages=c,c++,fortran --with-boot-ldflags='-R/usr/local/gcc-4.4.3/lib -L/usr/local/g
cc-4.4.3/lib'
Thread model: posix
gcc version 4.4.3 (GCC)
configure:2391: $? = 0
configure:2393: /patches/builds/build-gcc/./gcc/xgcc -B/patches/builds/build-gcc/./gcc/ -B/usr/local/gcc-4.4.3/sparc-sun-solaris2.10/bin/ -B/usr/local/gcc-4.4.3/s parc-sun-solaris2.10/lib/ -isystem /usr/local/gcc-4.4.3/sparc-sun-solaris2.10/include -isystem /usr/local/gcc-4.4.3/sparc-sun-solaris2.10/sys-include -V </dev/nul
l >&5
xgcc: '-V' must come at the start of the command line
configure:2396: $? = 1
configure:2415: /patches/builds/build-gcc/./gcc/xgcc -B/patches/builds/build-gcc/./gcc/ -B/usr/local/gcc-4.4.3/sparc-sun-solaris2.10/bin/ -B/usr/local/gcc-4.4.3/s parc-sun-solaris2.10/lib/ -isystem /usr/local/gcc-4.4.3/sparc-sun-solaris2.10/include -isystem /usr/local/gcc-4.4.3/sparc-sun-solaris2.10/sys-include -o conftest
-g -O2     conftest.c  >&5
ld.so.1: /patches/builds/build-gcc/gcc/cc1: fatal: libmpfr.so.1: open failed: No such file or directory
xgcc: Internal error: Killed (program cc1)
Please submit a full bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

I know from experience adding the directory of the mpfr libraries to LD_LIBRARY_PATH, but it is generally reconised as poor practice to do this.

I reported this as a bug for 4.3.1 some time ago

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36481

A suggestion was made to use

export LD_OPTIONS='-R/opt/csw/lib/$ISALIST'
(obviously I'd need to change the patch, as I'm not putting binaries under /opt/csw), but even that is not working for me.

Can anyone suggest how I can build gcc on Solaris so it does not need LD_LIBRARY_PATH set and compile-time and run-time?

What more can I possibly try?

Dave

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux