From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3827 invoked by alias); 25 Sep 2002 16:20:12 -0000 Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org Received: (qmail 3818 invoked from network); 25 Sep 2002 16:20:10 -0000 Received: from unknown (HELO mailsrv2.magsoft.com) (206.155.37.253) by sources.redhat.com with SMTP; 25 Sep 2002 16:20:10 -0000 Received: by mailsrv2.magellan.com with Internet Mail Service (5.5.2653.19) id ; Wed, 25 Sep 2002 09:20:08 -0700 Message-ID: From: Douglas Richardson To: "'gcc-help@gcc.gnu.org'" Subject: RE: Still can't build 3.2 on Solaris 8 Date: Wed, 25 Sep 2002 09:20:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" X-SW-Source: 2002-09/txt/msg00187.txt.bz2 Hi Mark, I recently built gcc 3.2 on Solaris 8. I'll tell you what I did. First of all, you wrote: > $ ./configure --with-ld=/usr/ccs/bin/ls --with-as=/usr/ccs/bin/as > $ make bootstrap The gcc installation docs say that you should not build in the source directory (as you did). Here is an except from the gcc installation manual: "First, in general, GCC must be built into a separate directory than the sources which does not reside within the source tree. This is how almost all developers build GCC; building where srcdir == objdir is completely unsupported; building where objdir is a subdirectory of srcdir is completely unsupported." I created a directory called gcc-3.2-objdir and then from there I did the following: $ ../gcc-3.2/configure --with-as=/usr/share/devenvs/gcc32/bin/as --with-gnu-as --with-ld=/usr/share/devenvs/gcc32/bin/ld --with-gnu-ld --prefix=/usr/share/devenvs/gcc32 --enable-languages=c,c++ --disable-shared $ make bootstrap My existing compiler was gcc 2.95.2 and I used binutils 2.12. Before I used binutils 2.12 I tried binutils 2.13 and I was able to build gcc 3.2. However, I had a problem building my own application that uses shared libraries with binutils 2.13 (my app would get a segmentation fault in the startup code). But as soon as I switched to binutils 2.12 the problem went away (I wrote a small test application to make sure it wasn't a problem with my application). If you still have no luck go to http://dcsearch.sun.com/search/sfw/index.jsp?qt=+gcc+3.2 for a binary distribution. Keep me updated, Douglas Richardson. -----Original Message----- From: Frost Mark - mfrost [mailto:Mark.Frost@acxiom.com] Sent: Wednesday, September 25, 2002 08:43 To: 'gcc-help@gcc.gnu.org' Subject: Still can't build 3.2 on Solaris 8 I've been working on this for about a month now and am still having problems. My platform: Sun Solaris 8 on sparc existing compiler is gcc 3.0.2 binutils 2.13 (when I attempt to use them anyway) GNU make 3.79 and also the built-in Sun make (tried both) I've tried building with the following options all of which have resulted in the same problem. $ ./configure --with-ld=/usr/ccs/bin/ls --with-as=/usr/ccs/bin/as $ make bootstrap and $ ./configure --with-gnu-ld --with-gnu-as --with-ld=/usr/local/bin/ld --with-as=/usr/local/bin/as $ make bootstrap and $ CONFIG_SHELL=/bin/ksh; export CONFIG_SHELL $ ./configure --with-ld=/usr/ccs/bin/ls --with-as=/usr/ccs/bin/as $ make bootstrap I've also tried building this on another Solaris 8 box here with the same results (not that I really expected anything different). (It was suggested to me that I could install the GNU installer. I tried that, but it had no effect on this issue.) In between build attempts, I've completely removed the gcc directory and re-extracted it from the gcc*.gz file just to make sure I start from a consistent state as "make distclean" does not seem to leave things in exactly the same state as the extracted distribution (for instance, all the platform-specific files and dirs are still there). When I run through the "make bootstrap", it runs for hours and appears to go through at least one stage of the compiler build and craps out with the following: ... stamp-h.in ..linked loading cache ../config.cache checking for Cygwin environment... (cached) no checking for mingw32 environment... (cached) no configure: error: can not find install-sh or install.sh in . ./.. ./../.. *** Error code 1 make: Fatal error: Command failed for target `configure-target-libffi' Current working directory /sysadmin/src/gcc-3.2 *** Error code 1 make: Fatal error: Command failed for target `bootstrap' $ The log file is over 11,000 lines so it definitely ran for a long time before this happened. If I do an "ls gcc" (the directory), I can see that there's a stage1, stage2 gcc/stage1 gcc/stage1_build gcc/stage1_copy gcc/stage2 gcc/stage2_build gcc/stage2_copy gcc/stage3_build gcc/stage_last It looks like the error is happening in gcc-3.2/sparc-sun-solaris-2.8/sparcv9/libffi/configure and it's looking for install-sh in '.' then '..' then '../..'. The "install-sh" file is really 3 levels up. The config.log file in that directory shows only: configure:561: checking for Cygwin environment configure:594: checking for mingw32 environment If I edit line 657 in gcc-3.2/sparc-sun-solaris-2.8/sparcv9/libffi/configure from for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do To for ac_dir in $srcdir $srcdir/.. $srcdir/../.. $srcdir/../../..; do Then cd back to the gcc root dir and do "make bootstrap" again. It compiles merrily away for a while and generates about another 1,000 lines of output before it gives me: make: Fatal error: Don't know how to make target `all' Current working directory /sysadmin/src/gcc-3.2/sparc-sun- solaris2.8/sparcv9/libffi *** Error code 1 make: Fatal error: Command failed for target `multi-do' Current working directory /sysadmin/src/gcc-3.2/sparc-sun-solaris2.8/libffi *** Error code 1 make: Fatal error: Command failed for target `all-multi' Current working directory /sysadmin/src/gcc-3.2/sparc-sun-solaris2.8/libffi *** Error code 1 make: Fatal error: Command failed for target `all-recursive-am' Current working directory /sysadmin/src/gcc-3.2/sparc-sun-solaris2.8/libffi *** Error code 1 make: Fatal error: Command failed for target `all-target-libffi' Current working directory /sysadmin/src/gcc-3.2 *** Error code 1 make: Fatal error: Command failed for target `bootstrap' $ So then, thinking that maybe I need to start afresh after this "fix" of adding the 3-level deep stuff to that configure file in libffi, I ran a "make clean" from the root dir and did a "make boostrap" again and got the same error (the one just above with the complaints about not being able to "make all"). So maybe a "make distclean" then running configure again and then "make bootstrap" again will help since "make distclean" does not seem to clear out the architecture dependent directories. However, "make distclean" blows out this time with: ... " "MAKE=make" "MAKEINFO=makeinfo " "PICFLAG=" "PICFLAG_FOR_TARGET=" "SHELL=/bin/ksh" "RUNTESTFLAGS=" "exec_prefix=/usr/local" "infodir=/usr/local/info" "libdir=/usr/local/lib" "includedir=/usr/local/include" "prefix=/usr/local" "tooldir=/usr/local/sparc- sun-solaris2.8" "AR=ar" "AS=as" "LD=ld" "LIBCFLAGS=-g -O2" "PICFLAG=" "RANLIB=true" "NM=nm" "NM_FOR_BUILD=" "NM_FOR_TARGET=nm" "DESTDIR=" "WERROR=" DO=mostlyclean multi-clean make: Fatal error: Don't know how to make target `multi-clean' Current working directory /sysadmin/src/gcc-3.2/sparc-sun-solaris2.8/libstdc++-v3 *** Error code 1 make: Fatal error: Command failed for target `mostlyclean-multi' Current working directory /sysadmin/src/gcc-3.2/sparc-sun-solaris2.8/libstdc++-v3 *** Error code 1 make: Fatal error: Command failed for target `distclean-recursive' Current working directory /sysadmin/src/gcc-3.2/sparc-sun-solaris2.8/libstdc++-v3 *** Error code 1 make: Fatal error: Command failed for target `do-distclean' $ This is just driving me crazy. I've built gcc many times over the years with no problems. I've got reasonably "vanilla" Sun Solaris boxes. I've got plenty of space in the build directory. I've tried with and without GNU tools. I've made minor modifications to hopefully fix issues only to get stuck at the next issue. I've explicitly told the bootstrap process to use the ksh and I've also used the default (bourne shell presumably). All the while I see that others have built successfully on this platform. All in all I've been working on this off and on for two months now. I'm clueless as to where to go from here other than to continue using my existing 3.0.2 compiler. Any help is greatly appreciated. At what point do I consider this some kind of bug? When that happens do I just send it to the gcc-bugs mailing list? Thanks Mark Frost ********************************************************************* The information contained in this communication is confidential, is intended only for the use of the recipient named above, and may be legally privileged. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited. If you have received this communication in error, please re-send this communication to the sender and delete the original message or any copy of it from your computer system. Thank You.