Why PropGCC and Eclipse?
Daniel Harris
Posts: 207
Hello Folks,
With the recent alpha release of PropGCC, I'd like to briefly explain some of Parallax's motivation behind GCC and the Eclipse IDE for the Propeller.
We feel that bringing the C and C++ languages to the Propeller family is incredibly important to the future of Parallax and Parallax Semiconductor. We very much recognize the need for a well understood, cross-platform, professional, and open source development suite for our goals in business and educational environments. The marriage of the GCC compiler and the Eclipse IDE will provide Parallax with an extremely powerful and flexible tool.
Of course, there is the glaring fact that C is the language of choice in the embedded development industry. Among other things, the debugging capabilities of GCC will give software developers access to a feature that has never really been natively available in the Propeller Tool. GCC also offers many code optimizations that were never able to be put into the Spin compiler.
Eclipse has so much to offer, too. From the beginning, Eclipse was developed with flexibility and configurability in mind. It is a tool that professionals are used to using and easily handles advanced features that embedded developers rely on. I'm not saying this is on the books, but there is the potential for Eclipse to be expanded to understand the Spin syntax. It can even be configured to present a different user interface for educational customers.
The mesh of these features, and more, is why Parallax chose the GCC/Eclipse combination for its Propeller development suite. When we are ready for full release, I think you guys will be pleasantly surprised at the completeness and ease of use of our new tool!
With the recent alpha release of PropGCC, I'd like to briefly explain some of Parallax's motivation behind GCC and the Eclipse IDE for the Propeller.
We feel that bringing the C and C++ languages to the Propeller family is incredibly important to the future of Parallax and Parallax Semiconductor. We very much recognize the need for a well understood, cross-platform, professional, and open source development suite for our goals in business and educational environments. The marriage of the GCC compiler and the Eclipse IDE will provide Parallax with an extremely powerful and flexible tool.
Of course, there is the glaring fact that C is the language of choice in the embedded development industry. Among other things, the debugging capabilities of GCC will give software developers access to a feature that has never really been natively available in the Propeller Tool. GCC also offers many code optimizations that were never able to be put into the Spin compiler.
Eclipse has so much to offer, too. From the beginning, Eclipse was developed with flexibility and configurability in mind. It is a tool that professionals are used to using and easily handles advanced features that embedded developers rely on. I'm not saying this is on the books, but there is the potential for Eclipse to be expanded to understand the Spin syntax. It can even be configured to present a different user interface for educational customers.
The mesh of these features, and more, is why Parallax chose the GCC/Eclipse combination for its Propeller development suite. When we are ready for full release, I think you guys will be pleasantly surprised at the completeness and ease of use of our new tool!
Comments
Well, short answer is that it doesn't.
Catalina uses Code::Blocks as its IDE. Given how well the Code::Blocks/Catalina combination works, I can't see why anyone would go to the effort of adding Catalina support to Eclipse - I believe it would in fact be quite difficult to do so. But integrating a new compiler into Code::Blocks is quite trivial - so naturally that's the option I chose.
However, it is worth pointing out that Code::Blocks also suports GCC. So you don't need to use Eclipse - you really have a choice of IDEs: Code::Blocks (which will support both GCC and Catalina) or Eclipse (which will support only GCC).
In my experience, if you're intending to use the IDE only for C or C++, you'll probably find Code::Blocks to be smaller, simpler, faster and easier to use than Eclipse. This is because Code::Blocks was developed specifically for C and C++ compilers, whereas Eclipse was designed to support all languages and compilers.
Ross.
I did try Eclipse out when I was looking at IDEs - but just the sheer size and complexity of the beast was enough to put me off. Also, compared to Code::Blocks, Eclipse runs like a snail. But I guess some development houses will still prefer it since they need to amortize their investment in it.
Ross.
EDIT:My bad, the plugin was for NetBeans IDE
I agree with RossH 100% on this one. I have been using Eclipse (SpringBatch/Java Development) for well over a year now and what he says is REALLY true.
I think it's great that there are rich options coming and they will help everyone grow substantially.
The approach to expand beyond dedicated apps/dev tools taken by Parallax is commendable!
Hopefully Eclipse can be tamed for hobby/casual users and present itself as simply as the Arduino IDE.
The remote debugging feature of Eclipse is great.
Reinhard
This is an interesting chip, and (Spin) an interesting language. But I suspect if we design our next product with this or the Prop2, I suspect I'll write everything in C, and will need a full-power IDE
Bill
Bill and BigFoot, it is good to hear that this is the kind of tool you are looking for as developers. We really want to get this thing right. As a tentative release date, we are shooting for May - June for the 1.0 release. I believe we can firm up that estimate once we are into beta stages, which should happen in about 2 months.
Bill
Although it does mean using the command line for now, it might be worth getting the propgcc alpha and trying it out for benchmarks too. GCC and Catalina are very different compilers, and have quite different performance characteristics and goals. For different projects you may find one or the other better.
Speaking of performance... in -mcog mode (meaning compiling code to fit in COG memory) gcc is actually competitive with PASM. Heater has produced a full duplex serial driver in C, and I've done a VGA driver. For that last little bit of performance you'll need PASM, but for many projects C will be sufficient.
Eric