[comp.lang.c++] C++ on Sun3

richk@uw-larry (Richard Korry) (01/26/88)

I am having problems getting V1.2 of AT&T C++ up on a Sun3/280 running 
SunO/S 3.3. This is the initial installation, so I made scratch first which
succeeded. Now trying to compile lib/complex/abs..c, cfront crashes with an 
internal error on stream.h on the line : struct whitespace { } ;
Can anyone with this running give me a hand? thanks
    rich

Andre_Louis_Marquis@cup.portal.com (01/28/88)

A general warning for C++ porters: Check *ALL* the ./incl/*.h files for
compatability.  Things like value for O_CREAT can change between machines.
There are other such subtle problems.

Andre

dld@idacrd.UUCP (David DeGeorge) (02/04/88)

In article <7388@pur-ee.UUCP>, 3ksnn64@pur-ee.UUCP (Joe Cychosz) writes:
> I do have a problem with the object file names that I don't have on
> my IRIS 4D.  The object names are all file.c.o instead of file.o

You probably need a smarter version of basename. The sysV basename
is such that:
if
x = ` basename u.c .[cC]`
then $x = u.  The shell script CC uses this fact to take care of the 
names of things. Look on your Iris basename is probably a shell script
that uses expr in a clever way. Either install this as basename on the
SUN or arrange for CC to use it. 
       By the way I cannot get CC to work on a SUN-3 using 3.4.
It makes OK but the final front end just hangs. And I have made all
the changes to stdio.h. ( getc putc clearerr IORW ....)

     David DeGeorge.

....princeton!idacrd!dld

bradley@uiucdcsm.cs.uiuc.edu (02/06/88)

/* Written  7:52 am  Feb  4, 1988 by dld@idacrd.UUCP in uiucdcsm:comp.lang.c++ */

You probably need a smarter version of basename. The sysV basename
is such that:
if
x = ` basename u.c .[cC]`
then $x = u.  The shell script CC uses this fact to take care of the 
names of things. 

/* End of text from uiucdcsm:comp.lang.c++ */

You don't need to mess with basename!  (Of course if you really want to...)
Instead you can split the above line into two lines, like this:

	A = `basename $B .c`
	B = `basename $B .C`

Now that I think about it, this will fail if you have a file name like
myfile.C.c, but such cases are rare.  Anyway, this is the change we made
on our Sun 3 and it has worked fine for us so far.


David Bradley

bradley@a.cs.uiuc.edu
Department of Computer Science
University of Illinois at Urbana-Champaign