I did the following setenv CONFIG_SHELL /opt/bin/bash create obj dir PATHTOSRCDIR/configure --disable-checking --disable-nls --disable-multilib --prefix=/local/dann/gcc-HEAD-cvs/installed --enable-languages=c,c++ make bootstrap make install Then find /local/dann/gcc-HEAD-cvs/installed -name libgcc\* /local/dann/gcc-HEAD-cvs/installed/lib/gcc-lib/sparc-sun-solaris2.7/3.2/libgcc.a /local/dann/gcc-HEAD-cvs/installed/lib/gcc-lib/sparc-sun-solaris2.7/3.2/libgcc_eh.a /local/dann/gcc-HEAD-cvs/installed/lib/sparcv9/libgcc_s.so /local/dann/gcc-HEAD-cvs/installed/lib/sparcv9/libgcc_s.so.1 file /local/dann/gcc-HEAD-cvs/installed/lib/sparcv9/libgcc_s.so /local/dann/gcc-HEAD-cvs/installed/lib/sparcv9/libgcc_s.so: ELF 32-bit MSB dynamic lib SPARC Version 1, dynamically linked, not stripped When using --disable-multilib libgcc_s.so should not go in the sparcv9 subdir... Release: 3.2 20020515 Environment: sparc-sun-solaris2.7 How-To-Repeat: As above.
Responsible-Changed-From-To: unassigned->jakub Responsible-Changed-Why: Jakub wrote all the code involved in this problem so he will know best how to fix it.
State-Changed-From-To: open->analyzed State-Changed-Why: I think we'll need driver changes then, the guess method used in mklibgcc really doesn't work well with --disable-multilibs. I think it will be useful anyway, for libtool etc. IMHO there should be an option -print-multi-suffix similar to -print-multi-directory, which would print empty line with -print-multi-directory would print ., /directory if -print-multi-directory would print directory and in the sparc/s390/x86_64/etc. cases would print the libdir suffix instead, so gcc -m64 -print-multi-suffix would print on sparc64-linux 64 and on sparc-solaris /sparcv9 Will try to implement this soon.
From: Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> To: jakub@gcc.gnu.org Cc: dann@godzilla.ics.uci.edu, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org, gcc-gnats@gcc.gnu.org, jakub@gcc.gnu.org Subject: Re: target/6668: when using --disable-multilib, libgcc_s.so is installed in the wrong place on sparc-solaris Date: 14 Aug 2002 18:02:33 +0200 jakub@gcc.gnu.org writes: > Synopsis: when using --disable-multilib, libgcc_s.so is installed in the wrong place on sparc-solaris > > State-Changed-From-To: open->analyzed > State-Changed-By: jakub > State-Changed-When: Thu May 16 06:35:02 2002 > State-Changed-Why: > I think we'll need driver changes then, the guess method > used in mklibgcc really doesn't work well with --disable-multilibs. > I think it will be useful anyway, for libtool etc. > IMHO there should be an option -print-multi-suffix > similar to -print-multi-directory, which would print > empty line with -print-multi-directory would print ., > /directory if -print-multi-directory would print directory > and in the sparc/s390/x86_64/etc. cases would print > the libdir suffix instead, so > gcc -m64 -print-multi-suffix would print on sparc64-linux > 64 > and on sparc-solaris > /sparcv9 > Will try to implement this soon. Have you been able to work on this? I've just received a report that (as expected ;-) IRIX 6 with --disable-multilib is affected by this problem as well. As on Solaris 2, you must configure this way on systems that cannot run 64-bit binaries for whatever reason, so this certainly should be fixed for 3.3 (if not for 3.2.1). Rainer
State-Changed-From-To: analyzed->closed State-Changed-Why: Should be fixed on both 3.2 branch and head.