From mboxrd@z Thu Jan 1 00:00:00 1970 From: llewelly@198.dsl.xmission.com To: root Cc: help-gcc@gnu.org Subject: Re: gcc and linux newbie's question Date: Tue, 21 Dec 1999 20:47:00 -0000 Message-id: References: <38604854.E5CEA5DE@polyu.edu.hk> X-SW-Source: 1999-12/msg00300.html On Wed, 22 Dec 1999, root wrote: > Tim Prince wrote: > > > > set CC in your environment before running configure. > > > > >2) Does it mean I should set those things before configuration? > > > > yes, according to your shell, along the lines of > > > > export CC=/usr/bin/gcc > > or > > setenv CC /bin/cc > > > > so that $CC invokes the compiler you wish to use for initial bootstrap > > Thanks Tim, but I still encounter some problems. > > According to http://gcc.gnu.org/install/configure.html , > > "We use srcdir to refer to the toplevel source directory > for GCC; we use objdir to refer to the toplevel > build/object directory." > > (a) I name the source dir and the object dir as follow: > srcdir /usr/local/src/gcc-2.95.2 (I unpacked the bzip2 files > here) > objdir /usr/local/bin/gcc-objdir (currently empty) > Can I remove these two directories after the compiler > is built? If not, are there any preferred directories to > hold the "sources" and "objects"? Or are there any > preferred names for the directories? Yes, you may remove them after you run make install. > > (b) Now I set CC by export CC=/usr/local/bin/gcc. > Am I correct? > > (c) From objdir, I issue the command src/configure. If you are building in a separate dir (which is advised), you need to tell configure where the source directory is, using something akin to: ${srcdir}/configure --srcdir={srcdir} or: $/usr/local/src/gcc-2.95.2/configure --srcdir=/usr/local/src/gcc-2.95.2 > However, I got the following error message: "config.guess > failed to determine the host type. You need to specify one". > It then list the option --host=HOST. But what should > the HOST be (I use Linux on a PC with an AMD K6-2 > 300MHz CPU)? This wasn't mentioned in the installation > instruction. It isn't usually needed; the only time I ever needed to use --host was when I tried to build gcc on an RS/6000 43P running linux - every other platform I have tried was easiy recognized by gcc's configure. Probably, configure got confused because you did not tell it the srcdir. If, for some inexplicable reason you do need the host string, here are 2 ways to figure it out: (1) Check install/CONFIGURE . I know you said you read the install file, but there are many INSTALL files in the gcc tree. Also, try (2) If you already have a working gcc installed, run 'ls /usr/lib/gcc-lib' (for a gcc installed under /usr; that is where redhat linux puts it) or 'ls /usr/local/lib/gcc-lib' if gcc was installed under /usr/local, its default. On a vanilla redhat linux box I get: $ls /usr/lib/gcc-lib/ i386-redhat-linux This directory is named after the host platform of the installed gcc (luckily) in the same format gcc's configure wants it in, which is more or less -- or --- On a non-redhat, or heavily modifed redhat system, you might get: $ls /usr/lib/gcc-lib/ i386-pc-linux-gnu Which should also work just fine. As you said you have a k6, k6-pc-linux-gnu *may* work for you; I have never tried it, so I am sticking my neck *way* out here. Warning: If /usr/lib/gcc-lib is nfs mounted, or if somebody has built a few cross compilers, it may contain dirs for many platforms. From mboxrd@z Thu Jan 1 00:00:00 1970 From: llewelly@198.dsl.xmission.com To: root Cc: help-gcc@gnu.org Subject: Re: gcc and linux newbie's question Date: Fri, 31 Dec 1999 22:24:00 -0000 Message-ID: References: <38604854.E5CEA5DE@polyu.edu.hk> X-SW-Source: 1999-12n/msg00300.html Message-ID: <19991231222400.LbeIRM4ZLi2YHekmcjfqzPmfvKXoVYkDjik_iAKvpPQ@z> On Wed, 22 Dec 1999, root wrote: > Tim Prince wrote: > > > > set CC in your environment before running configure. > > > > >2) Does it mean I should set those things before configuration? > > > > yes, according to your shell, along the lines of > > > > export CC=/usr/bin/gcc > > or > > setenv CC /bin/cc > > > > so that $CC invokes the compiler you wish to use for initial bootstrap > > Thanks Tim, but I still encounter some problems. > > According to http://gcc.gnu.org/install/configure.html , > > "We use srcdir to refer to the toplevel source directory > for GCC; we use objdir to refer to the toplevel > build/object directory." > > (a) I name the source dir and the object dir as follow: > srcdir /usr/local/src/gcc-2.95.2 (I unpacked the bzip2 files > here) > objdir /usr/local/bin/gcc-objdir (currently empty) > Can I remove these two directories after the compiler > is built? If not, are there any preferred directories to > hold the "sources" and "objects"? Or are there any > preferred names for the directories? Yes, you may remove them after you run make install. > > (b) Now I set CC by export CC=/usr/local/bin/gcc. > Am I correct? > > (c) From objdir, I issue the command src/configure. If you are building in a separate dir (which is advised), you need to tell configure where the source directory is, using something akin to: ${srcdir}/configure --srcdir={srcdir} or: $/usr/local/src/gcc-2.95.2/configure --srcdir=/usr/local/src/gcc-2.95.2 > However, I got the following error message: "config.guess > failed to determine the host type. You need to specify one". > It then list the option --host=HOST. But what should > the HOST be (I use Linux on a PC with an AMD K6-2 > 300MHz CPU)? This wasn't mentioned in the installation > instruction. It isn't usually needed; the only time I ever needed to use --host was when I tried to build gcc on an RS/6000 43P running linux - every other platform I have tried was easiy recognized by gcc's configure. Probably, configure got confused because you did not tell it the srcdir. If, for some inexplicable reason you do need the host string, here are 2 ways to figure it out: (1) Check install/CONFIGURE . I know you said you read the install file, but there are many INSTALL files in the gcc tree. Also, try (2) If you already have a working gcc installed, run 'ls /usr/lib/gcc-lib' (for a gcc installed under /usr; that is where redhat linux puts it) or 'ls /usr/local/lib/gcc-lib' if gcc was installed under /usr/local, its default. On a vanilla redhat linux box I get: $ls /usr/lib/gcc-lib/ i386-redhat-linux This directory is named after the host platform of the installed gcc (luckily) in the same format gcc's configure wants it in, which is more or less -- or --- On a non-redhat, or heavily modifed redhat system, you might get: $ls /usr/lib/gcc-lib/ i386-pc-linux-gnu Which should also work just fine. As you said you have a k6, k6-pc-linux-gnu *may* work for you; I have never tried it, so I am sticking my neck *way* out here. Warning: If /usr/lib/gcc-lib is nfs mounted, or if somebody has built a few cross compilers, it may contain dirs for many platforms.