From: cummings@tiger1.prime.com (Kevin J. Cummings)
Subject: Re: WANT GCC? FORGET FAQ.GCC AND README?? READ THIS FIRST!!!!
Organization: Prime Computer, Inc.
Date: Fri, 4 Sep 1992 17:28:30 GMT

In article <186a86INNcsb@usenet.INS.CWRU.Edu>, mal11@po.CWRU.Edu (Matthew A. Lewis) writes:
	[ a fairly reasonable explanation of what and how to get GCC onto your
	  LINUX system.  Deleted for brevity.]

> So now you have these files. Hopefully they were transfered without any
> corruption. Unfortunately they are VERY large, so I would get corrupted
> ones about every 5th try. And you won't find this out until you're in
> LINUX and then you'll have to reboot into DOS. Major frustration.

Get a better transport method.  80% file transfer results are POOR.  120%
file transfer rate is much preferred, especially with large files.  If you're
using kermit, reduce the packet sizes, and turn on 2 or 3 byte checksums so
that bad packets get detected more often so that they will result in packets
being resent (MUCH preferable to whole files being resent!).  I often put
the very large files on 3.5" floppy at work from my UNIX workstation in .TAR
format to avoid hours of downloading at 2400 bps.  (One of these days, I'll get
UUCP working under LINUX. B^)  Then I can transfer files in my sleep!)  I realize
that not all LINUX users have that luxury.  A second thing to do is to find a more
robust method of file transfer.  Speed isn't everything.  In fact it can be a
detriment if you have to resend whole LARGE files becuase of undetected errors.

If you can't configure KERMIT, use something else.  I use KA9Q, though I'll admit
to relying on the TCP layer for packet robustness since SL/IP doesn't have any
direct support for it.

Get an modem with MNP or V.42 support.  (Only useful when connected to a modem
with the same kind of support.)  It will do wonders for your error control.

A lot of V.32 modems out today can do protocol "spoofing" for UUCP and KERMIT
(at least.  I suspect X and Z modem as well).

> BTW, these files should be in a DOS dir and they WILL take up alot of memory.
> I think about 5MB.

Er, I can download to either DOS or LINUX (depends on which I'm running at the
time).  Check out some of the LINUX communications tools!

> Now reboot into LINUX and login as root. Now follow these commands.
> 
> cd /
> mcd c:\<the dos dir with the above files>
> mcopy c:*.* .

Or, mount the DOS filesystem under 0.97-pl1 or better LINUX directly, and
cp the files into place.

> That should get all those files into the LINUX root dir.
> Now, change their names using the mv (move) command.
> 
> mv <fucked up dos filename now in linux>  <new filename>
> 
> Do it according to these transformations:
> install.2.x  --------->   install.2.x
> binutils.tar.Z ------->   binutils.tar.Z
> 2.2.2ddb.tar.Z ------->   2ddb.tar.Z
> 2.2.2dlib.tar.Z ------>   2dlib.tar.Z
> 2.2.2dmisc.tar.Z ----->   2dmisc.tar.Z
> 097pl1inc.tar.Z ------>   097inc.tar.Z
> 097.tar.Z ------------>   097.tar.Z
> 
> remember that these names on the left will be REALLY screwed up!!!!
> keep track of them.........
> The reason that we have to do all this crap is because LINUX has a
> limitation on length of filenames. UNIX doesn't have them. 
> DOES ANYONE KNOW IF THIS CAN BE CHANGED??????

Yeah, run on the new Extended File System (which is only being ALPHA tested).
If you don't trust ALPHA tests, then wait for BETA B^).

> Now we need to install the kernel sources. 
> 
> cd /usr
> mkdir src
> cd src
> mkdir linux
> cd /
> cp 097.tar.Z /usr/src/linux
> cd /usr/src/linux
> uncompress 097.tar.Z
> tar -xvf 097.tar
> 
> That should make some file and directories. 
> now do this.
> 
> cd /
> cp 097inc.tar.Z /usr/src/linux
> cd /usr/src/linux
> uncompress 097inc.tar.Z
> tar -xvf 097inv.tar
> 
> More source files are made.
> 
> NOW WE ARE READY TO DO WHAT IT DOES SAY IN README AND GCC.FAQ
> Fortunately, it's only one line.
> 
> Go to the root directory.
> 
> cd /
> sh install.2.x -v 2d /usr/src/linux

Uh, that should be version  2.2.2d  not version  2d.

> The program will ask you about a math coprocessor. Answer accordingly.
> Eventually the program will barf looking for some file in a dir
> like /usr/lib..../2d/......./<some file>
> 
> The problem is with this 2d directory, an artifact of this process of 
> dealing with LINUX filename length restrictions.
> 
> Change directories to the dir ABOVE 2d.
> 
> do an 'ls' command.
> all you should see is 2.2.2d
> 
> do this

Uh, this is going out of your way to fix the problem in a non-standard fashion!
Not recommended.  I suspect you will possibly have problems with shared programs
built by other users using the "standard" pathnames.

> mv 2.2.2d 2d
> cd /
> sh install.2.x -v 2d /usr/src/linux
> 
> 
> This should either make it all the way through the installation script, or
> it will barf on another file in some subdirectory of a 2d directory.
> 
> Find it and change 2.2.2d to 2d like about and run sh again.   
> 
> This will put you where I am. With a ton of files on my harddrive (which
> ones can I erase?????????). The compiler gcc in /usr/bin. And some
> instruction to remove some lines from the LINUX kernel Makefile and
> then do a make dep.
> 
> unfortunately....I can't find make. And I haven't an editor. My vi
> doesn't work yet. 
 
> BTW, if you don't like these instruction, screw you. It worked for me :)

In general, its good to see that we have some minds working around problems
that are willing to share their experiences with others.  However, the comment
above could have been done without.  I installed GCC 2.2.2d by putting the .tar.Z
files in /usr/src/GCC  and running the install.2.x script from there with NO
problems (It was a MINIX filesystem with 14 character name limitations).  All
of this name changing is NOT NECESSARY.

In general you had two problems to overcome.  File transport to your LINUX system,
and installation of the files once there.  I beleive you did a better job on the
first than on the second.  But it worked for you, so who am I to put you down.

> Hopefully this will motivate someone (in authority?) to make this
> installation process a little easier.

Hopefully, but please remeber:  LINUX is an OS for hackers, being maintained by
hackers, and the installation scripts are (mostly) being written by hackers
who understand what they are doing.  It's the non-unix-hackers among us who
are left clueless, wanting, and whining.  I suppose that in time, many of them
will come to understand what is going on here, and in the meantime, we are left
to persevere.

PS  I am not yet a UNIX hacker, but I am learning (fast).

=================================================================
Kevin J. Cummings                       PrimeService
20 Briarwood Road                       A Computervision Company
Framingham, Mass.                       500 Old Connecticut Path
					Framingham, Mass.
Work:  cummings@primerd.Prime.COM
Home:  cummings@kjc386.framingham.ma.us

Std. Disclaimer: "Mr. McKittrick, after careful consideration,
		  I've come to the conclusion that your new
		  defense system SUCKS..."   --  War Games
=================================================================