Beta

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

CodeWarrior for Linux: Reviewed

Hemos posted more than 14 years ago | from the ides-for-linux dept.

Linux 76

Kurt has returned, continuing his reviews of Linux IDE [?] environments. After reviewing Code Fusion, he's reviewed Metrowerks CodeWarrior (for Suse). The full text of the review is below.CodeWarrior For SuSE
CodeWarrior for RedHat

  • Company:Metrowerks
  • Rating:9/10
  • Summary:Inexpensive solution for those looking for an IDE solution.

It is difficult to have worked in the tech industry without having come into contact with Metrowerks. Metrowerks CodeWarrior is the dominant compiler for MacOS, with ports to Windows, Solaris, a wide variety of microprocessors, and fairly recently, Linux. The current version of CodeWarrior for Linux, version 4.0, supports C and C++, with plans for Java support in late 1999. CodeWarrior is targeted at the beginning or hobbyist programmer. While CodeWarrior lacks some of the features of its more expensive competitors, it provides a basic, low cost solution.

CodeWarrior is by far the easiest installation I have ever performed on a Linux box. I threw in the CD, answered a couple of questions, and it installed it without a problem. While I already had EGCS installed on my machine, it is a prerequisite for installation. For those who do not have EGCS installed, the CD contains a copy and the installation guide includes instructions for setting it up.

Anyone who has used CodeWarrior on any other platform will be able to easily dive straight into CodeWarrior for Linux. The interface is exactly the same. For those without previous experience, the interface is logically laid out and very usable without depending on documentation. For those who have been weaned on Microsoft Visual Studio, the interface may feel a little MacOS-like, but overall everything is well designed and very easy to use.

In addition to the standard IDE features like integrated debugging, color coded source, and simplified project management, CodeWarrior has an important advantage in that its projects are cross platform compatible. Of course, it is still up to the programmer to develop cross platform code, it at least simplified the process of migrating code between plaforms.

In spite of all of its wonderful design elements, it is not without a few annoying elements. First, whenever you create a new project, it is always named "Hello." It doesn't matter if you create a project named "foo." You still need to go under the project settings and change the Target Name manually. While this may be simply picking nits, it is a rather annoying oversight.

While CodeWarrior is targeting to individuals and relatively small projects, even some of these people have learned the wonders of using a version control system to roll back a few idiotic changes. Unfortunately, the Linux port has very poor version control abilities. Straight out of the box, there is no source control functionality. Furthermore, Metrowerks does not provide any of the necessary plug-ins to add source control to the Linux version. According to a representative from Metrowerks, they have plans to provide the necessary interfaces, but no resources have yet been allocated to the project. The specification, however, is open so that anyone desiring could create the necessary plug-in. Anyone interested in developing the necessary plug-ins should go to http://www.metrowerks.com/pdf/Plugin_API_Ref.pdf.

CodeWarrior is a low cost solution ideal for Linux developers who absolutely have to have an IDE. For users who need a lot of the extra features that make the switch from vi to an IDE worth while, CodeWarrior is somewhat lacking. These developers may wish to look to Code Fusion or other similar products with a more complete set of tools.

For the small scale individual or hobbies programmer, CodeWarrior provides a friendly environment to develop programs in. While it lacks some of the more advanced features found in other IDEs, it is a well designed program with an excellent balance of features. For a mere fraction of the cost of many competitors' products, it also is well within the range of people who are on a tight budget.

cancel ×

76 comments

Sorry! There are no comments related to the filter you selected.

Rad Features not Mentioned (4)

tedd (30053) | more than 14 years ago | (#1611331)


I've been using CodeWarrior for Mac OS since 1994-5 and CW for WinNT since it became usable, which was basically CW Pro 2. I use it mainly for Java development, but also for Mac OS and Win32 C and C++ development, and sometimes for both together (native methods for Java apps). It's particularly nice for this since you can have all this stuff integrated with subprojects etc.

Anyways, I haven't checked out the Linux version yet, but I imagine (as with the port to Win32) that it will suck for the first version or so, then will get really good. And it will be great, since there several features I absolutely cannot live without!

1. Source Browser

Holy shit. This thing rocks! Turn on browse info for your project. It does not make it take 15 times longer to build (like DevStudio). Now, in addition to syntax coloring, you may choose to have whatever color you like for

  • Classes
  • Enums
  • Globals
  • Templates
  • Constants
  • Functions
  • Macros
  • and Typedefs
Now for the rad part. Right click on a class name. You get a popup with four items
  • Go to Class Declaration
  • Open Browser for Class
  • Open Hierarchy for Class
  • Go to Member Function Definition ->
The first one opens the source file that the class is declared in, scrolled to the location you last closed it in. The second one opens a "Browser" window for the class (more on this later). The third one opens a graph in a big scrolling window that shows little boxes for each class with lines drawn to indcate the class hierarchy. And the fourth one (so rad) open a popup menu right there with every method (and parameter types for each). If you select one (many times I just want to look; "what's that overloaded method signature?") it open the source file the method's in scrolled to the top of the comment directly preceeding that method.

The "Browser" window (which will be familiar to Smalltalk developers) has three panes: "Member Functions," "Data Members," and "Source." The first two are scrolling boxes with method signatures and data members with little icons to denote if they're static or not. There are checkboxes at the top of the window that allow you to enable display (in any combination) of "Inherited," "Public," "Protected," and "Private" members. Like filters. Click on a member, and the Source pane shows only that member (with it's preceeding comment). You can have any number of these windows open at once.

Now the really nifty part. Let's say you're developing in Java. Why not take the Java source code (for the java.* packages themselves), put them in a project, and build it with browser info? Now use it in a subproject in your projects (only have to build it once).

Boom. No more need for paper docs or that crappy html that gets generated from the JavaDoc, baby, you got the source! Want to see a concise list of the methods? Open a browser to the String class. Or that pesky java.net.SocketImplFactory. Or just right click on it to get the method list. And it's fast. I imagine you could do the same thing with Qt or gtk or gdk.

Ok one more thing about hte browser. Now, instead of right-clicking on a class name, right click on a method. You get a popup list of all the classes the implement that method, and another option, "Find all implementations of XXX." This is particularly cool if you use a lot of polymorphism, because let's say you have an abstract server class, and many implementations and you're making a new one, and you want to compare the others. Select the "Find all implementations..." item, and a Browser window appears (like the other one for a class) loaded with all the methods that implement that signature, so you can just flip through them in one window. Rad.

2. Function popup.

It's weird. Whay can't anybody else get this right? The M$ tools in particular are awful about this. When you open a source file, theres a little button in the window frame that is a drop-down menu listing every method in the file. Works with Java inner-classes too. You pick a method, it scrolls to it. Simple. DevStudio makes you type in the name of the method or in the J++ tool puts them in this crappy tree control that takes up tons of screen space.

Anyhow, I'm not employed by them, I just think people can code a shitload faster with this stuff, especially if it's done with all the subtleties that Metrowerks puts into it.

Cheers,

tedd


--
.:.
:tedd

Re:for hobbies programmers? (1)

TWR (16835) | more than 14 years ago | (#1611332)

Why? How so? I've never seen or heard that CodeWarrior was aimed at hobbies programmers? I've never used it, but I was under the impression that it was a tool as serious as all the others, suitable for professional development. This claim sounds kind of funny.

For the last, oh, 3 or 4 years, Metrowerks has been selling "Discover Programming for Macintosh" and "Discover Programming for Windows" has been around for a few years now, too. These are copies of CodeWarrior intended for hobbiests. The restrictions are: -No cross-compilation tools (Pro can build Win32 from the Mac compiler and PPC/68K from the Win32 compiler) -No commercial distribution (this restriction is in licence only) -No PPC compilation (for the Mac product) For about $70US, you get Pascal, C, C++, and Java, as well as a bunch of "How-To" books on CD-ROM. It's a really good deal.

The GNU edition of CW for Linux seems to be along the same lines. Makes sense to me.

-jon

Re:GnuPro's debugger is open source (1)

wct (45593) | more than 14 years ago | (#1611333)

I believe Cygnus' debugger interface is open source too:

http://sourceware.cygnus.com/insight/

It looks very nice, though it's probably less mature than DDD. I might try it today :)

As a side note, I just wish there was a debugger with a smaller footprint, preferably not based on Motif.

Daniel.

Project templates? (1)

asparagus (29121) | more than 14 years ago | (#1611334)

In spite of all of its wonderful design elements, it is not without a few annoying elements. First, whenever you create a new project, it is always named "Hello." It doesn't matter if you create a project named "foo." You still need to go under the project settings and change the Target Name manually. While this may be simply picking nits, it is a rather annoying oversight.

Actually, this is one of those nifty little features. Create an empty project, set it up with all the libs and whatnot you need to link too, and then save it as "OpenGL Program" or something. If you look through your directories, you should find some projects named "Std C Lib Console" or so...throw your new project in there. Then, when you go to create a new project, hit "OpenGL Program", and it'll use that project as a template for a new one! It'll save you time once you get it setup for the you use.

Re:Um, conflict of interest? Slashdot CW banner ad (1)

Keeper (56691) | more than 14 years ago | (#1611335)

That still leaves the original idea however -- if the person who wrote the article receives no benefit whatsoever from a good or bad review, so what? They have no incentive to deceive.

Re:C++ Compiling (MSVC++ is wrong) (1)

Ataru (50540) | more than 14 years ago | (#1611336)

BZZZT! WRONG!

1) If you turn off Microsoft extensions, the for scope is implemented correctly
2) Admittedly, this means that many system headers will not compile
3) You can do: #define for if (0); else for
4) OK It's a pain in the arse. But I thought I would inject a little fact into the discussion!

Andrew.

Like other distro's would care... (0)

Anonymous Coward | more than 14 years ago | (#1611337)

To toss out some obvious flamebait, users of other distributions probably wouldn't care if only redhat had CW (Openlinux excepted). In the world of SuSe, Debian, and Slackware, emacs/vi is the only thing acceptable and anything that's easy to use, has mouse support and a GUI is for morons who can't use their computer. The other distro's don't care if they have CW, and frankly, they don't deserve it. The other distributions lack of desire to give their product ease-of-use is what has put Redhat where it is today, not any evil marketing ploy on the part of Redhat.

Re:Ports and sorts (1)

Ukab the Great (87152) | more than 14 years ago | (#1611338)

I'm not suprised that Codewarrior for windows crashed constantly and lacked serious usability.
I think the guys at metrowerks, known for making a
damn fine Mac IDE, went above and beyond the call of duty and gave their port a true win32 look and feel.

CodeWarrior a programming editor??? (1)

bmacy (40101) | more than 14 years ago | (#1611339)

I really feel sorry for anyone who considers CodeWarrior a programming editor. The editing features are extremely poor... it's like using notepad with syntax highlighting. I pity anyone who thinks that is the way things should be (shoot, vi is a better programming editor when considering only editing commands).

There are other problems...can't have it open a file from the command-line, inflexible tab/space indenting, very contrained version control choices. The Linux version is even worse than the Windows one... bugs, missing features... anyways, I wrote a bug/suggestion report to CodeWarrior already.

Re:Integrated Development Environment? (1)

bcombee (5301) | more than 14 years ago | (#1611340)

Actually, you can drag a file from the Gnome Midnight Commander window into a CodeWarrior project -- I used it to set up my presentation at the Atlanta Linux Showcase. I'm not sure if that is in the IDE that is shipping in the boxes or something added later that worked in the alpha IDE I was running.

Re:How is the quality of the object code? (1)

bcombee (5301) | more than 14 years ago | (#1611341)

Thanks for the compliment! We work hard to keep on the cutting edge of x86 code generation.

Competition with CodeCrusader (1)

smoe (81003) | more than 14 years ago | (#1611342)

CodeCrusader looks very promising. Admittedly it looks very promising for quite a while now ;)

The initial hype about CodeWarrior and the potential later frustration with it might help to attract more people who are willing to improve its native-Linux equivalent.

Personally I would not wonder too much if they go open source somewhen later as well, especially since now-owner Motorola is presumably rather interested in promoting its hardware than making money with tools you just need to develop for it.

Re:This Review and the rating system (0)

Anonymous Coward | more than 14 years ago | (#1611343)

I agree wholeheartedly. The review did not really tell the ready anything substantial. I have used CodeWarrior on the mac and was looking to see what features had made the port. No help here.

Re:This reminds me of something... (1)

hawkfish (8978) | more than 14 years ago | (#1611344)

There are rumors that one can set one up under MacOS X server, but I just use a Linux box myself.

Re:It looks good (0)

Anonymous Coward | more than 14 years ago | (#1611345)

Source control would be nice for a production environment...

Other packages have those too... (2)

Keeper (56691) | more than 14 years ago | (#1611346)

"Source Browser"

For what it's worth, Visual Studio 5 and above offer similar functionality (works similar to one of the old tree-based "explorer" windows [not internet explorer...]). I agree, it is a VERY nice feature.

Version 6 also offers some really nice things in the editor. Say you have this code...

int hello(CString bla)
{ return bla.tolower();
}

When you type the "." in the bla.tolower() line, a listbox will pop up showing all of the members present in bla. Very handy if you don't remember exactly how to spell a function. If you're just looking for a function, or wonder what it does, you can click on one of the functions in the list and it will display the comment lines above the function (also very handy if you're just piddling around).

You can also "finish" the statement by hitting tab or starting a parenthesis (similar to hitting tab on the shells which do similar things for filenames).

When you type the "(" of the function, it will show you the function definition(s), which allows you to see what variables need to go where (which is also handy for the nasty windoze functions which require something like 30 parameters or whatnot).

For Linux development, it is probably one of the best packages available.

My 2c

Re:I don't get it (1)

Keeper (56691) | more than 14 years ago | (#1611347)

It's just more convenient then having to load 20 different programs I suppose. :)

Actually, it does save some time, as you don't have to spend significant portions of time getting all of the different debuggers/editors/compilers/linkers/ to work together. It also removes the extra time required to find problems with those things because you forgot to change a line in the makefile...

Re:Um, conflict of interest? Slashdot CW banner ad (1)

Keeper (56691) | more than 14 years ago | (#1611348)

This would be a valid concern if the person writing the article actually received revenue from the banner clicks...

Which I must admit, I don't know the answer to...

Re:C++ Compiling (0)

Anonymous Coward | more than 14 years ago | (#1611349)

Is this a "real" C++ compiler or does it translate your code into C and compile that?

Re:C++ Compiling (1)

Anonymous Coward | more than 14 years ago | (#1611350)

From their web site: The top level KAI C++ driver, KCC, is intended to be used as a compiler. Under the top level driver there are three distinct compilation phases. First, the front-end parses the source file, performs high-level optimizations, and generates an intermediate file in standard C. Next, a C compiler reads in the intermediate C file and generates an object file. Last of all, a link process combines the object modules and libraries, and takes care of template instantiation and static object itialization. Compatibility: KAI C++ is not link-compatible with objects compiled by other C++ compilers. Attempting to link code compiled by KAI C++ and another C++ compiler will probably result in link-time failures or run-time faults. This means that you must compile all of your C++ code and C++ libraries withKAI C++. KAI C++ 3.4 includes a very close to standard C++ library, including I/O and STL. The C++ standard differs from existing practice in some ways. We strongly recommend reading the migra-tion document

Differences between Linux Codewarrior and Mac/Win (2)

swdunlop (103066) | more than 14 years ago | (#1611351)

The Linux version of Codewarrior doesn't provide its own compiler, instead it depends on EGCS. In theory, you can cross-compile if you set up EGCS correctly. Therefore, with a modicum of tweaking it should be possible to compile for PalmOS, for example. (A traditional stronghold for Metrowerks.)

Since they didn't include their own libraries or compiler, you lose CodeWarrior's usual ability to create cross-platform GUI apps. This, coupled with the lack of a revision control interface implies that Metrowerks has decided to aim this newest incarnation at recreational programmers like myself who are familiar with using GNU tools for Linux development who would prefer using the excellent CodeWarrior IDE. (Slant warning: I've been a big fan of Codewarrior for some time and prefer it to the Visual Interdev suite. They even managed to convince me to abandon my venerable Borland C++ IDE, which is no mean feat since I cut my teeth on Turbo Pascal 3.0.)

According to Metrowerks' documentation, the reason CodeWarrior for Linux doesn't do its own debugging is tied to the fact that EGCS doesn't provide sufficient symbolic information to drive their debugger. I don't find Metrowerks' decision to rely on third party debuggers especially bad, since there are several good OpenSource debuggers for Linux.

I am curious, however, how easy it would be to extend Codewarrior for Linux with support for new target hosts and other, non-C/C++ programming languages.

It looks good (1)

Dionysus (12737) | more than 14 years ago | (#1611352)

I saw it at LinuxWorld, and it looks nice.

Still, what I really need is a C++ compiler that is up to the standard. And no, egcs/GCC is not up to the standard (although they are working on it).

Integrated debugging ??? (2)

hugui (41535) | more than 14 years ago | (#1611353)

Last time that I heard of, the "debug" portion of the IDE was accomplished by launching DDD ( an excellent debugger by the way ); I don't count that as "integrated debugger". In fact, after exchanging a couple of e-mails with s Metrowerks technician, and finding that there wasn't even a symbol browser or reference cross-indexing, I decided not to purchase it.
Have they finally at least integrate a debugger ?

And last: what the hell are these ads about "girls eating scorpions" doing in Slashdot. Rob, I though that you were *still* in control. What's next, porn ads ?

C++ Compiling (1)

WombatOfIllRepute (98081) | more than 14 years ago | (#1611354)

Well, what works better than gcc right now? I know it's not quite up to the C++ standard, but it's probably the closest right now. It's the only thing that manages to handle templates correctly, and only now that 2.95 is out.

Cool (2)

Darchmare (5387) | more than 14 years ago | (#1611355)

>the interface may feel a little MacOS-like, but
>overall everything is well designed and very easy
>to use.

Seems kind of redundant to me. :>

Seriously though, Codewarrior for the MacOS rocks. Give it some time, as the first version for the Mac was a little anemic to begin with - in the last few years, it has definately come around.

Metrowerks really saved Apple way back when - the transition from 68k to PPC wouldn't have been nearly as transparent as it was if it weren't for them.

- Darchmare
- Axis Mutatis, http://www.axismutatis.net

The hello thing (1)

Anonymous Coward | more than 14 years ago | (#1611356)

Haven't used Codewarrior in a while, but you can change the hello thing. Essentially, it uses the hello world program as a base to start from. All you have to do is find the program, and re-name the file. Now it can be named "main" or whatever. More info on specifically how to do this is on their web site www.metroworks.com or somthing to that degree. One cool note: On the full version of codewarrior, you can develop for playstation... hmmmm...

for hobbies programmers? (1)

Luis Espinal (1553) | more than 14 years ago | (#1611357)

Why? How so? I've never seen or heard that CodeWarrior was aimed at hobbies programmers? I've never used it, but I was under the impression that it was a tool as serious as all the others, suitable for professional development. This claim sounds kind of funny. What does it take for an ide (or any tool) for that matter to be aimed for professional development? What is it about CodeWarrior that is aim just for hobbies? The fact that it doesn't have all the features Imprise and Micro$tuff tools have? I don't know man. I don't know what to think about this "hobbies programmers" thing.

Luis Espinal.

Re:It looks good (0)

Anonymous Coward | more than 14 years ago | (#1611358)

The recent review of CodeWarrior for Linux mentions that Codewarrior is targeted toward hobbyists and beginners. Is that really true? I thought their intention was to create an industrial strength IDE for use in corporate environments (that, at least, seems to be the strategy with CodeWarrior on other platforms). I've really never heard Metrowerks characterized this way, and I'm at a loss to determine what might be lacking in the IDE to make it anything less than a tool suitable for large, serious, mission-critical group projects.

Scorpions/Masochism (1)

seesik (45318) | more than 14 years ago | (#1611359)

WTF is up with that? It doesn't appear to be a REAL pr0n add, as the same place often has some gangsta's bio on the banner as well. Nonetheless, I am ususally comfortable reading /. at work; bosses strolling by might see Borg Gates or IBM icons, but GurlLuvsBugz is kinda weird.

some quick notes.. (2)

mcc (14761) | more than 14 years ago | (#1611360)

as a mac codewarrior user, i just have a couple small notes.
the whole thing with the popup menu letting you jump to functions or wherever you put a #pragma mark seems like a small feature, but you get addicted to it quickly..

also, it has (at least on mac) an FTP postlinker which will allow you to develop, say, a windows program in mac codewarrior, and every time it compiles simply dump the compiled file via ftp onto a windows machine on the network for running.. is this something common for IDEs?

and the mac version seems to have come with Playstation development tools.. does the linux version? :) if you don't have java though i guess you wouldn't have PSX.

codewarrior also has the most amazing multiple-file find/replace capabilities i've ever seen.. but then again that wouldn't apply on linux, since you people have grep and awk and such things.

maybe not important. but if anyone's interested.. codewarrior's pretty nice..

Integrated Development Environment? (2)

Nicolas MONNET (4727) | more than 14 years ago | (#1611361)

Yeah, but integrated with what? Do they support KDE/Gnome? Can I D&D from a gmc window, etc ... ?

Their compilers, as I've used them a while ago on Mac are good, but their main force is that they seem to be (used to be at least) a company that listens to their customers. Hey, can you imagine that? You can actually REQUEST a functionality and expect it to be present in the next releases!

Not open source by far, but with them you don't usually endure the usual pain of closed source software.

Re:Integrated debugging (Use GnuPro) (1)

mgrennan (2067) | more than 14 years ago | (#1611362)

And I was looking for a Real debuger.

Check out GNUPro from cygnus. I think these to products may work real good together.

GNUPro is more then a debuger. It has it's own version of the compiler optimized for Pentum processors. It really is faster.

But the debuger is not to notch but good.

Re:some quick notes.. (2)

Millennium (2451) | more than 14 years ago | (#1611363)

You got PSX tools? I didn't get any PSX tools (then again, I also have the Academic version).

Did you hear, by the way, that Metrowerks is also doing the compilers for PSX2, Nintendo 64 (I would guess that they'll have Dolphin as well), and Dreamcast?

Re:It looks good (3)

Millennium (2451) | more than 14 years ago | (#1611364)

There are two versions of CodeWarrior for Linux planned, however. The one reviewed here appears to be the GNU edition, which uses the Open-Source compilers. There is also a "Professional Edition," set to come out later this year, which I think will provide its own compiler. Being an avid CodeWarrior user on MacOS, I can't wait to see how the Pro edition comes out.

I just wish it would run on LinuxPPC...

Re:for hobbies programmers? (1)

Darchmare (5387) | more than 14 years ago | (#1611365)

I don't think it's really an issue of it being aimed toward beginners - I think it's mostly a case of it being less developed than the Mac version. The BeOS version is similarly 'light'. Once Linux really hits it big, I think they'll really beef it up (you have to admit they've spread themselves thin - MacOS, MacOS X, Win32, Linux, Playstation, PalmPilot, BeOS, Java, embedded, etc).

- Darchmare
- Axis Mutatis, http://www.axismutatis.net

Re:Integrated Development Environment? (1)

Foogle (35117) | more than 14 years ago | (#1611366)

What would you drag in? Anyway, that's not the the integrated means. It means that all of the tools you need to program with (at least, the ones they think you need) are integrated into one system (in this case CodeWarrior). It's just a nice way of saying "Hey, you don't need to ALT-TAB to the other x-term to compile".

-----------

"You can't shake the Devil's hand and say you're only kidding."

Re:It looks good (5)

Kurt (6712) | more than 14 years ago | (#1611367)

Metrowerks itself has not been very clear about the the target audience for CodeWarrior. My initial review for the product actually trashed them a little bit for lacking some of the features of their competitors. After doing some fact checking to confirm that these features were in fact lacking, they sent me the following information stating that this release is targetted towards individuals.

"CodeWarrior for Red Hat or SuSE Linux, GNU Edition is targeted at individual programmers experimenting with the Linux OS and looking to either adapt their previously learned platforms to Linux or those who are programming novices. The GNU Edition blends CodeWarrior's powerful project manager, editor, and search engines with the familiar code generation and debugging tools found in GNU/EGCS technology, thus achieving a seamless transition for newcomers to the Linux OS. In fact, Metrowerks' overall goal in creating the GNU Edition was to create an entry path for newcomers to the Linux OS that is palatable and easy to implement. As an added incentive, we have priced this entry-level edition at $99.00 anticipated street price, a price much below what would be paid for our CodeWarrior Professional Edition. Metrowerks does not presume that commercial-grade applications will be the primary reason users will employ CodeWarrior for Red Hat or SuSE Linux, GNU Edition for their projects. The GNU Editions have been developed to help make the transition to the Linux OS a smooth ride for the programming community.

"CodeWarrior for Linux, Professional Edition, to be released later this year, is intended for the more seasoned programmer and will be used primarily in industry. The Professional Edition is a comprehensive set of development tools featuring the CodeWarrior IDE encompassing Metrowerks' blazing fast compilers and integrated debuggers. With this edition, programmers can create applications for C, C++, and Java with unparalleled ease, increasing productivity and getting their products to market faster."

Hopefully this clarifies their position.

Re:This reminds me of something... (2)

Mars Saxman (1745) | more than 14 years ago | (#1611368)

You've found a good CVS client for Mac? Please share! I want to hear about it.

I do CVS on my Mac by mounting an AFP share from my Linux box, copying the source tree back and forth, and then using cvs on the Linux box. It's lots easier than struggling with that piece of crap "MacCVS Pro" Netscape released...

-Mars

I don't get it (0)

Anonymous Coward | more than 14 years ago | (#1611369)

What's really the point using an IDE. Syntax highlighting and debuggers are already around and planning can be done independently as well. Uuh, Again I don't get it.

Re:For RedHat?, For SUSE? (2)

swdunlop (103066) | more than 14 years ago | (#1611370)

In the commercial software world, if you state a requirement, you are expected to back it up. If Metrowerks says 'Linux 2.0.x+' and doesn't declare which libc they require, or GNOME and KDE version, which X11 they need, etc., they will invariably have a horde of screaming users asking for a refund. It is easier for their product development team to just say 'We will support SuSE up to and beyond version , and RedHat up to and beyond version ', and be done with the matter.

This makes life a LOT easier for their QA department to isolate testbeds for alpha testing since they don't have to simulate each and every possible environment. Metrowerks has always had a reputation of being people who test their products exhaustively and provide excellent support to their users.

That being said, I have installed CodeWarrior for SuSE on my virgin Caldera OpenLinux 2.3 workstation and it worked. Beautifully. The install script doesn't even bother checking whether I'm running SuSE or not, it merely assumes I'm literate enough to read the box and must know what I'm doing.

Re:C++ Compiling (2)

Dionysus (12737) | more than 14 years ago | (#1611371)

You're right, there are no alternative for gcc on UNIX if you want to follow the ISO C++ standard. Heck, the $1000 Sun Workshop compiler doesn't even handle namespaces at all, not to mention some of the more fundemental classes, like string. Still, VisualC++ has had support for string and wstring classes at least from v5. And even though their STL implementation is all wrong, and they add some extensions to the language, at least, you can write almost proper standard C++. How far away are we from a ISO C++ compliant compiler, anyway? Months, quarters, years?

Re:I don't get it (0)

Anonymous Coward | more than 14 years ago | (#1611372)

The point of an IDE is that you can do most everything from one program rather than having to run & manage multiple programs. Emacs has most of what I expect in an IDE, but there are enough cryptic key combinations to remember for text editing alone to keep me busy. Also, for C++ people most IDEs have class browsers, which are very important. It is just easier and more efficient to master and use one IDE than a bunch of separate tools. Spend some time coding for a living and you will see what I mean.

Re:Why not just add a front-end for CVS? (0)

Anonymous Coward | more than 14 years ago | (#1611373)

If you have taken the time to really master all of the IDE features that Emacs offers, then don't bother switching. In my case, it took me long enough to memorize all the oddball Ctrl-Meta-Shift XX commands just to be proficient at text editing with Emacs. I have no interest in going through a similar learning process just to use its IDE features when there are alternatives available.

Re:Um, conflict of interest? Slashdot CW banner ad (2)

Kurt (6712) | more than 14 years ago | (#1611374)

Just FYI: I have no monetary gain in doing these reviews... I only get the opportunity to play with a bunch of software for a while in exchange for a review...

How is the quality of the object code? (1)

Wordman (79573) | more than 14 years ago | (#1611375)

I know that Metrowerk's Win32 compiler on the Mac builds code that is, on average, about 20% faster than the same source compiled with DevStudio. How does the Linux version's output compare to mainstream Linux compilers?

Re:Integrated Development Environment? (0)

Anonymous Coward | more than 14 years ago | (#1611376)

i use codewarrior for linux personally, and yes, it does support d&d, but only from gmc windows. Also, i have found that codewarrior is a decent IDE, especially for the price, although, the GNU edition leaves some key features to be desired (like being able to run the program thru the IDE.) i just hope that when these features are included, they allow free upgrades!

Re:Other distros (1)

warmi (13527) | more than 14 years ago | (#1611377)

CW is targeted at people who prefer IDEs and Debian is not the distribution one would expect find a lot of people fitting this profile.
In my opinion, typical Debian users will never replace his favored vi or Emacs enviroment no matter what.

Re:Cool (2)

Eccles (932) | more than 14 years ago | (#1611378)

Seriously though, Codewarrior for the MacOS rocks.

The one thing I most dislike about CodeWarrior for Macs is that the .mcp files are binary, which doesn't work well in a multi-programmer environment. (You can't make independent changes and merge them together, like you can with a makefile or MSDev's .dsp/.dsw files, nor can you parse what changes were made.) Is it too much to hope that the Linux version does not suffer from this?

Re:Cool (2)

TheGS (54669) | more than 14 years ago | (#1611379)

From my experience of CodeWarrior Pro 5.2 on Mac: While the .mcp format for CodeWarrior IDE 4.0.x looks like it's still binary, the IDE does allow import and export of an XML project file.
The project file exporting options include exporting to an importable XML file (it includes the DTD!) or a simple file list. Either format can be diffed and compared by a human much more easily than the binary.

Re:C++ Compiling (0)

Dionysus (12737) | more than 14 years ago | (#1611380)

You're right, there are no alternative for gcc on UNIX if you want to follow the ISO C++ standard. Heck, the $1000 Sun Workshop compiler doesn't even handle namespaces at all, not to mention some of the more fundemental classes, like string.

Still, VisualC++ has had support for string and wstring classes at least from v5. And even though their STL implementation is all wrong, and they add some extensions to the language, at least, you can write almost proper standard C++.

How far away are we from a ISO C++ compliant compiler, anyway? Months, quarters, years?

Why not just add a front-end for CVS? (2)

Get Behind the Mule (61986) | more than 14 years ago | (#1611381)

If CodeWarrior needs better source conrol in the IDE, why don't they just integrate it with CVS? CVS is an excellent package, and Metrowerks doesn't need to re-invent the wheel. And CVS has established itself as first choice for open source projects -- on some projects, there's no other way to participate in code development. If Metrowerks makes you work with something else, it'll just cause headaches.

With emacs, interaction with CVS is no problem. And speaking of emacs, is there any compelling reason why I should get the CodeWarrior for Linux and quit using emacs? Don't get me wrong, I'm familiar with CW on MacOS and I know it's very good. But so is emacs, and I don't see why I should abandon one for the other on Unix.

For RedHat?, For SUSE? (1)

MrEfficient (82395) | more than 14 years ago | (#1611382)

It bothers me that CodeWarrior is being released for specific distributions for linux. Does this mean it will not run on any distribution other than the one specified? I realize that different distributions place things in different directories and may include different versions of libraries but its really disturbing that an application can't simply be made for linux rather than for RedHat, SUSE or whatever.

I fear the fragmentation of linux. Should there be standardization of where critical files are placed on linux and what libraries should be installed? I hope that releasing software for different distributions like codwarrior has done doesn't become a trend.

Isn't this a problem?

Re:Cool (1)

Bob Hearn (61879) | more than 14 years ago | (#1611383)

I second this. ClarisWorks (now AppleWorks) was done in Metrowerks (1.0 and 2.0 were in Think C) - on the Mac at least, it is a great environment. And Apple would have really been screwed if Metrowerks hadn't come around - there was no other reasonable way to port programs to the PPC architecture. I've been thinking about getting the Linux version. Anyone tried it with LinuxPPC? And that review was kind of short on specifics. How does the Linux version really compare to the Mac version?

Re:For RedHat?, For SUSE? (0)

Anonymous Coward | more than 14 years ago | (#1611384)

I picked up the SuSE version and (after installing it on my SuSE box) installed it on a spare RedHat box. Works fine.

This Review and the rating system (1)

Utter (4264) | more than 14 years ago | (#1611385)

I must say that I'm not too impressed with this review. It gives rating 9/10 without saying what the reference value is. And the review is so shallow. Coloring of keywords have been standard in most editors for years.
My advice is to take Visual Studio C++ 6.0 and XEmacs+DDD+autoconf as reference. Point out all pros and cons comparing with these two systems. And keep references to old reviews.

I almost a volunteer to make such a review but I guess I'm to biased towards XEmacs+DDD+autoconf.

Other distros (1)

J. Pierpont (58099) | more than 14 years ago | (#1611386)

It is distressing to see that CodeWarrior and CodeFusion are both targeted at RH and SuSE. Though Cygnus claims that "the current v1.0 Dev Kit will probably work fine on Caldera, Debian, and other releases of Linux," it distresses me to see that major distributions (like Debian, what I consider to be the "reference" distro) are not supported. It can't be that difficult to support the program on the other major distributions, such as Slackware and Debian. If the Linux world becomes balkanized due to software support limitations, that would be an upsetting day. -awc

Ports and sorts (1)

Kinthelt (96845) | more than 14 years ago | (#1611387)

When I first bought my copy of CodeWarrior two years ago, I was severely unimpressed. The installer crashed on me twice, I reinstalled everything, then it worked fine. Then when I had everything up and running, the toolbar hints only gave me a ''. And it crashed, and it crashed and it crashed. And my greatest peeve was its Pascal compiler which didn't support REALs ( redirect all flames to /dev/null ).

Now, I understand that CodeWarrior was ported from Mac to Intel, so I was expecting a few caveats. But the total lack of usability was astonishing!

I hope CodeWarrior does not go through the same growing pains in Linux as it did for Win32.

Re:Why not just add a front-end for CVS? (2)

Kurt (6712) | more than 14 years ago | (#1611388)

The version control system theoretically can tie into CVS. The necessary software is not yet written, but the necessary APIs are published on their web site at www.metrowerks.com/desktop/versi on_control/ [metrowerks.com] .

Apparently at one point in time, Metrwerks was working on such support, but the project went nowhere. The rep that I asked played the "Blame it on the intern" card. :)

Re:Um, conflict of interest? Slashdot CW banner ad (1)

Keeper (56691) | more than 14 years ago | (#1611389)

Cool, that's pretty much the way it worked when my dad reviewed stuff for magazines (this was ancient history, back in the Atari ST era).

Re:C++ Compiling (MSVC++ is wrong) (1)

muppet (20489) | more than 14 years ago | (#1611390)

Still, VisualC++ has had support for string and wstring classes at least from v5. And even though their STL implementation is all wrong, and they add some extensions to the language, at least, you can write almost proper standard C++.

BZZZT! WRONG, oh so annoyingly wrong. try this code in VC++6:

void foo ()

{
for (int i=0; i<10; i++) {
;
}
i++;
}

by the definition of C++'s loop scode (not an ISO thing, but a basic C++ thing that i've seen in books reaching back many years), that should NOT work, and in fact won't compile with g++, but compiles fine in MSVC++.

on the converse, this code:

void foo2()

{
for (int i=0; i<10; i++) {
cout << i << " loops to bind them...\n";
}

for (int i=10; i>0; i--) {
cout << "...them bind to loops " << i << endl;
}
}

won't compile with MSVC++6 --- the error it gives: redefinition of i!!! but i wasn't declared in function scope!!!!

note that both of these compile perfectly with g++. i've run into this problem when writing code from my C++ books and when porting code from unix to windows ever since i started using MSVC++ at 4.something. this bug really pisses me off.

muppet

Re:For RedHat?, For SUSE?...for $Distribution (1)

tallpaul (1010) | more than 14 years ago | (#1611391)

Nothing to worry about. Companies are just having a hard time figuring the new model out. They are used to.. well.. Sun produces Solaris. That's all, noone else.

My employer's software product used to be released for RedHat version X. But they have since learned that not only can people run different versions which have all the libraries etc. required to run the binary, but they can also run distributions. Our next release will simply require, eg: libc6.0, libXm2.x or whatever. Everyone else will figure it out too. The linux market is small enough without cutting out large chunks of it by limiting the distribution.

Re:I don't get it (0)

Anonymous Coward | more than 14 years ago | (#1611392)

I code in C++ every day in the 'real world' in vim. That and a shell are all I've ever needed.

comparison of compilers (1)

linuxlover (40375) | more than 14 years ago | (#1611393)

I was wondering where I can find some comparisons (feature list, generated code performance, and ISO C++ complaince) of common compilers (EGCS, Sun's CC, metrowerks ..etc)

Every one(Sun, Metrowerks) claims theirs is the best and have some bogus bench marks (Sun for work shop)! I need to see something from neutral.

So that I can convince my manager to adopt say EGCS over Sun CC :-)

THanks heaps

Re:Cool is relative (0)

Anonymous Coward | more than 14 years ago | (#1611394)

The big problem with CW is in the debugger. It has a large number of serious problems that never get fixed, they simply get shuffled around from release to release. These include problems in the display (variables aren't updated when you step), problems in not finding sym files at startup, problems in not honoring the preferences telling the debugger to ignore DebugStr()s and so on.
What I find frustrating about this is that MW appears to have no interest in fixing these bugs. I reported a large number of them in full detail about 9 months ago. The result was a custom engineering build made for me that appeared to fix every problem---but the code from that build appears never to have been rolled into the main source code.

It is frustrating to go from MW to any other environment (eg Dev Studio or standard UNIX tools) that are so primitive in terms of UI. However it is just as frustrating under MW to beat your head against a wall for hours bcs the debugger won't work properly.

Palm Pilot (0)

Anonymous Coward | more than 14 years ago | (#1611395)

The MetroWarrior *compiler* has been a favorite among several PalmPilot developers. Unfortantly, the compiler contains some prioritary extentions to C/C++ as well as some standard C++ methods not yet supported by gcc. Since MetroWarrior for Linux is nothing more than an IDE and uses gcc as the compiler it can not be used to "compile" MetroWarrior specific Palm Pilot code as-is. But what makes the MetroWarrior IDE almost complettely useless is that it makes no attempt to provide any additional tools for porting code between MetroWarrior'isms and GCC supported C/C++ code. Even trival support options as providing an unique color to MetroWarrior prioritary keywords isn't done by MetroWarrior for Linux. In the end, it is easier to port MetroWarrior code for further development compiled via GCC if the IDE is Emacs. MetroWarrior for Linux scored a -1 on my scale for both flexiablity and usefulness. They may make a couple more sales due to their use of the "for Linux" but I would be suprised if people come back to buy upgrades.

Re:For RedHat?, For SUSE? (1)

mindstrm (20013) | more than 14 years ago | (#1611396)

No, it certainly doesn't mean that. It means if you have that distribution, you can drop it in and play. The company is telling you 'This is the version we made it to work with. We only guarantee that it works on that.'. It really doesn't mean that they've even checked whether it works anywhere else. They probably don't know.

Re:Um, conflict of interest? Slashdot CW banner ad (1)

ToastyKen (10169) | more than 14 years ago | (#1611397)

While I personally don't have a problem with the situation since if /. becomes biased (other than blatantly in favor of Linux) we'll be the first to notice and scream about it, I should point out the flaw in your argument:

This would be a valid concern if the person writing the article actually received revenue from the banner clicks...

Who wrote the article is irrelevant since /. choses which articles to post. They could conceivably have gotten one bad review and one good review and chosen to go with the good review because it'll make their advertiser happy.

Re:Why not just add a front-end for CVS? (1)

ToastyKen (10169) | more than 14 years ago | (#1611398)

I think the whole point of a GUI, and of a well-designed interface in general, is that you don't HAVE to spend lots of time learning to use the interface.. It should just be obvious and take a few hours or a few days at most to learn.

Re:Cool (1)

ToastyKen (10169) | more than 14 years ago | (#1611399)

Well, "no other way" is a bit of an exaggeration. you could use MPW with MrC, iirc...

A Mac program with a command line. What more could a Linux geek as for on a Mac? ;)

This reminds me of something... (2)

Millennium (2451) | more than 14 years ago | (#1611400)

Anyone know of a good MacOS CVS server? I'm running an Open-Source project for MacOS and I'd rather not go through the trouble of BinHexing files if it can possibly be avoided. I know something is out there because Mozilla uses CVS, but its MacOS CVS builds aren't BinHexed and the resource forks still come out fine.

The current CVS offerings I see for MacOS all do CVS clients quite well, but I don't see anything that looks like a server. Perhaps I'm just not looking in the right place. I'll do a Linux server if need be, but I just need something that'll do good CVS for a MacOS-based project.

Inexpensive ? (1)

kovi (52074) | more than 14 years ago | (#1611401)

$82? An overstatment, seems to me. Especially compared to C-Forge ($50) which supports far more languages and is avalilable for more UNIX platforms. Hell, "C/C++ only" version you get for free (binary only, though).
IMHO there is no point in making yet another debugger integrated into this or that IDE, there are plenty of them around to use, statring from pure GDB and ending on excellent front-ends like DDD.
I might be wrong on that, of course, given that I program mostly in Perl/shell :-) which usualy does not require anything more that vi.

Re:Cool (2)

dair (210) | more than 14 years ago | (#1611402)

I've been thinking about getting the Linux version. Anyone tried it with LinuxPPC?
Unfortunately, there is no LinuxPPC version - it's x86 only at the moment.

-dair

Ah, ok! (1)

Luis Espinal (1553) | more than 14 years ago | (#1611403)

Ok, that makes more sense.

Peace.

Re:C++ Compiling (1)

dalke (1472) | more than 14 years ago | (#1611404)

Dionysus (thales74@yahoo.com):
You're right, there are no alternative for gcc on UNIX if you want to follow the ISO C++ standard.
....
How far away are we from a ISO C++ compliant compiler, anyway? Months, quarters, years?

How about KAI C++? It's been around for years. See

http://www.kai.com/C_plus_plus/index.html

From everything I've heard, it's the most ISO compliant C++ compiler you can get, and produces some of the fastest code as well. I works on many OSes, including the Linux/Intel version for $400.

Um, conflict of interest? Slashdot CW banner ad? (1)

Anonymous Coward | more than 14 years ago | (#1611405)

Why should I trust a software review to be a fair and impartial review when the same site doing the reviewing also sports banner ads selling the same product?

Slashdotters rag on ZD all the time for praising MS stuff while residing deep within MS's pocket. For this reason, I will treat this review with the same disdain and suspicion.

Okay, but no CVS! (1)

mholve (1101) | more than 14 years ago | (#1611406)

I thought CW was pretty sweet. I was also under the impression that it handled CVS from Linux Expo. I must've missed something, because I ordered it and lo and behold... No support for cvs. What's up with that?
Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>