mackin@vast.eecs.unsw.oz (John Mackin) (03/09/91)
I am a relative novice at C++ and am hoping for some assistance. A group I am about to join wants to implement a large C++ application on Sun Sparc 2's (using X, if that matters). I was wondering what would be the best C++ system to use. I asked the biggest C++ guru I could find and he said: ``Buy the one from Sun, costs around $20K, includes C++-source-level debugger. Don't touch g++, they've broken the language.'' Being aware that gcc now compiles a superset of C (but hasn't broken the language as far as I know, as long as you don't use any of the superset features), I queried him about this, and he insisted that g++ was not just a superset, that what it compiled wasn't really C++ at all. I would like some help through this maze. Is g++ really broken? If so, please tell me specifically how. If not, does gdb (or some hypothetical gdb variant, like gdb++ if it exists) work with g++? If not, is it possible to use any C++-source-level debugger with g++? Is the Sun C++ product really that expensive? How much is it from AT&T? (Rough numbers are all I want.) Should anything else be considered? I have heard rumours of Saber C++ -- I assume it's just a development environment, not a compiler? Is it out? How much does it cost? Please reply by mail, and I will summarise. Thanks for your help. -- John Mackin, currently between affiliations; <mackin@vast.eecs.unsw.oz.AU> ``I wanted a mission -- and for my sins, they gave me one.''
vaughan@puma.cad.mcc.com (Paul Vaughan) (03/12/91)
I tried to mail this, but the message was returned. Anyway, this gets asked often enough to warrant a posting. mackin@vast.eecs.unsw.oz (John Mackin) wrote What C++ implementation is best for Sparcs? . . . I was wondering what would be the best C++ system to use. I asked the biggest C++ guru I could find and he said: ``Buy the one from Sun, costs around $20K, includes C++-source-level debugger. Don't touch g++, they've broken the language.'' Being aware that gcc now compiles a superset of C (but hasn't broken the language as far as I know, as long as you don't use any of the superset features), I queried him about this, and he insisted that g++ was not just a superset, that what it compiled wasn't really C++ at all. Well, in a strict sense, that's true, but g++ is close enough. Note that Sun C++ is not really C++ (the current definition) either. I wouldn't worry about this issue so much. On the other hand, there are LOTS of other issues. gdb works with g++ (there is no gdb++), but not especially well. There are lots of little problems and gdb doesn't understand multiple inheritance yet. I'm not going to go into all the issues, because I don't have time. Basically, my advice is this: Now is not a good time to work with g++. If you won't really be doing much for 6 months, g++ 2.0 may be out by the time you need it and that may change things radically. So, if you can delay the decision I would do that. If you need it today, don't mess with g++. I don't mean to endorse Sun C++, but I suppose it's as good as anything. If you appreciate good debugging environments, you should consider Saber C++. I believe it includes a slightly modified version of Sun C++. Don't quote me on that, though. -- Paul Vaughan, MCC CAD Program | ARPA: vaughan@mcc.com | Phone: [512] 338-3639 Box 200195, Austin, TX 78720 | UUCP: ...!cs.utexas.edu!milano!cadillac!vaughan ---------------------------------------------------------------------------------- I spent from $3 to $10 today to pay interest on the national debt. How about you? ----------------------------------------------------------------------------------
jbuck@galileo.berkeley.edu (Joe Buck) (03/12/91)
I didn't respond by mail because this misinformation may influence other people; I've seen a number of postings implying that there are people out there who think g++ compiles a different language than C++. In article <1195@usage.csd.unsw.oz.au>, mackin@vast.eecs.unsw.oz (John Mackin) writes: |> I was wondering what would be the best C++ system to use. I asked |> the biggest C++ guru I could find and he said: ``Buy the one from |> Sun, costs around $20K, includes C++-source-level debugger. |> Don't touch g++, they've broken the language.'' Your friend the "guru" is ignorant. He probably based his decision on a much earlier version of g++. Our group is effectively using g++ for a fairly sizable project. It is true that there are compiler bugs, especially concerning multiple inheritance. However, we haven't had trouble working around the problems, and AT&T's compiler can also be made to core dump when handed fancy multiple inheritance graphs (though far less often). |> gcc now compiles a superset of C (but hasn't broken the language |> as far as I know, as long as you don't use any of the superset |> features), I queried him about this, and he insisted that g++ |> was not just a superset, that what it compiled wasn't really C++ |> at all. Oh, rot. Tell your friend the guru that he needs to educate himself. |> I would like some help through this maze. Is g++ really broken? |> If so, please tell me specifically how. If not, does gdb (or some |> hypothetical gdb variant, like gdb++ if it exists) work with g++? |> If not, is it possible to use any C++-source-level debugger with |> g++? gdb will work with g++ version 1.37.1. However, g++ version 1.39 made some changes that the current gdb (v3.5) doesn't handle. I wish they hadn't done this; Mike Tiemann said he was pressured into releasing 1.39 when he wasn't really ready. You should know that 1) Michael Tiemann, author of g++, is a voting member of the ANSI C++ standards committee; 2) He has pledged that future versions of g++ will "track" the standard as it evolves. All of this will take time; we'll eventually get something called g++ version 2.0, but who knows when. -- Joe Buck jbuck@galileo.berkeley.edu {uunet,ucbvax}!galileo.berkeley.edu!jbuck
dah@zoot.avgrp.cr.rok.com (Dave Haverkamp) (03/12/91)
In article <VAUGHAN.91Mar11101706@puma.cad.mcc.com> vaughan@puma.cad.mcc.com (Paul Vaughan) writes: > >I tried to mail this, but the message was returned. Anyway, this gets >asked often enough to warrant a posting. > >mackin@vast.eecs.unsw.oz (John Mackin) wrote > > What C++ implementation is best for Sparcs? . . . > [*** Stuff deleted... ***] So what is the most resonable C++ compiler and environment to have for multiple workstation platforms? ( Apollo, Sparcs, DECstations & possibly VAXstations...). All of the specific WS makers only have C++ for their product(s). I do know G++ will run on almost everything... so... What third party C++ compilers will run on multiple palatforms and if someone could compare them, how do they rate? -- -------------------------------------------------------------------------- David A. Haverkamp Collins Commercial Avionics Division Rockwell International MS 124-211 INTERNET: dah@zoot.avgrp.cr.rok.com Cedar Rapids, Iowa 52498
mackin@vast.eecs.unsw.oz (John Mackin) (03/14/91)
I have lots of information now and don't need any more replies to the referenced article (which I am about to cancel). Everyone who replied will get mail back from me, modulo the mail getting there :-), and I will summarise as promised (but it might take me a little while to get around to that). Thank you all for the assistance. -- John Mackin, currently between affiliations; <mackin@vast.eecs.unsw.oz.AU> ``I wanted a mission -- and for my sins, they gave me one.''