|
» Subscribe » Favorite Links » What is S60? » Freeware & Trials » S60 devices » Hints and tips » About this blog |
» Blognotes (15) » Bugs and Workarounds (4) » Build tools (5) » Carbide.c++ 1.1 (4) » Carbide.c++ 1.2 (8) » Carbide.c++ 1.3.x (8) » Carbide.c++ 2.0.x (1) » Carbide Plug-Ins (4) » CodeWarrior (2) » FAQ (6) » Future directions (24) » General (46) » Off-topic (4) » On-device debugging (13) » Performance Investigator (2) » Product features (16) » Product releases (16) » Screencast (12) » Support (30) » Tool setup (5) » UI Designer (8) » Usability (15) » Work in Progress (13) » Write-build-debug (4) |
|
» What's your excuse? » RELEASED: Carbide.c++ 1.2 » Carbide.c++ 1.2 Beta available for download » Carbide.c++ 1.2 Beta progressing well » Screencast: Carbide.c++ 1.2 sneak preview - Build system |
|
Subscribe to RSS feed For email notification, please click here » |
There has been a flurry of recent support questions on creating projects, debugging, and a host of other minor issues that doesn't include enough information to actually solve the problem. Upon further investigation it's discovered that the person is still using Carbide 1.2 or GASP, 1.1 as their development environment.
So the question is, why haven't you upgraded to Carbide 1.3 yet?
Carbide 1.3 includes support for Eclipse 3.3 and CDT 4.0, a host of build system improvements for large projects and indexing, a new System search capability, new debugger improvements like the Executables view and improved on-device debugger stability, new tool plug-ins like CodeScanner, Capability Scanner, Epocwind.out, and lots of bug fixes.
Carbide 1.1 and even parts of 1.2 really pale in comparison to what Carbide 1.3 offers. If this small message has struck a chord somewhere, go download the latest version here. Especially you Carbide 1.1 users as I'm sure you'll be pleasantly surprised at the improvements.
The real answer?
There is no excuse!
Read the press release...
It took longer than expected, but I think you'll agree that it was good of us to take our time: Carbide.c++ 1.2 is now ready and available for download.
Let me share with you the key features about this release. It introduces new features that ease Symbian development; but it also improves on a set of existing features that I think you'll find make your job easier.
(All) Build system - in many ways, the Symbian build system is a source of a lot of tooling problems for us, so for 1.1 we introduced a managed make -type system that was supposed to allow for better overall flexibility. However, the build system didn't provide us with the quick responsiveness a tool needs in order to address new reference designs as they become available, so we went back to the drawing board and implemented a build system that takes a very different approach: It simply calls into the command line tools. Although this brings some new issues, the result as a whole is an order of magnitude faster (think 10x for complex projects), and we offer a few new features as well - single file build, abld target to name a few. Oh, and importing is faster -- in fact, the more complex the project, the bigger the improvement.
(All) MMP editor - possibly the best-liked new feature by our beta group, the MMP editor provides a visual interface to the MMP file, as well as direct access to the file. It makes operations less error-prone, yet gives you full flexibility to customize the MMP. See the MMP Editor screencast for more information.
(All) Code browsing & navigation - Eclipse's C++ Development Tools project (CDT) gives us all our C/C++ specific features that we can't live without. Carbide.c++ 1.1 was based on 3.1, and as the product project went on, it turned out that we could fix a lot of long-standing bugs by migrating to CDT MS5 release, which mostly contained fixes to e.g. the indexer, which has been a thorn in the side of CDT for a while. What we didn't count on was the success of the code browsing and navigation features that came with the update. If there ever was a stealth feature that ended up being a success, this would be it.
(PRO) Power consumption analysis - Newer Nokia phones support power tracing. Install thethe Performance Investigator, run your favorite use case, and then view the CPU and power consumption profile for the use case. A "jump to source" feature means you can now jump to the line of code that was being executed at a given point in time -- so finding the code resulting in power drain is easier than ever.
(OEM) Stop-mode debugging - Those familiar with CodeWarrior OEM Edition know that an IDE is a great thing to have when working with reference hardware -- but configuring an in-circuit emulator can be tedious. With the help of Eclipse launch configurations (customized to work with Carbide.c++ & Lauterbach / Sophia ICEs), connecting to a TI H4 or an OEM wingboard is easy stuff.
(OEM) Crash debugger view - Another easier-to-use feature: If your phone has crashed, you can now dial into the crash debugger, and view the system state in the actual debugger view - no need to scroll through a long text file. ´
+ last but not least - Carbide.c++ Plug-in SDK - Time will tell the value of this one - but I expect this to be a long-term success. The plug-in SDK allows other developers to write custom tools that use APIs we've exposed in our build system and elsewhere in the tool. Tool extension writers like Macrobug will probably make good use of it. Perhaps you can, too?
Aside from the new features, we also worked hard to fix bugs. We had an awesome beta group and with their assistance and enthusiasm, were able to improve on critical areas to make the product that much better.
I'll post instructions on how to get your hands on the product separately.
Carbide.c++ 1.2 is now out of beta, and we're finalizing the GM build for release in about two weeks.
In the meantime, Beta Release 4 (build 22) is now available for anyone to download -- so if you want to use Carbide.c++ to develop for Open C, or simply want to migrate to a better version of Carbide.c++, get it here.
And, as always, let us know what you think, and how we can make the tool better.
I'll send a note as soon as the final release of 1.2 is available.
For those using Carbide.c++ 1.1, you'll be glad to know that our beta program is progressing well and we're planning to release Beta Release 3 over the course of the weekend. Feedback is positive and we're expecting to fix a lot of user-reported issues in the last few cycles. Once the product nears its GM date we'll start providing more info via the blog.
We're also thinking about releasing the final Beta release publicly, via Forum Nokia. If you're developing with OpenC or PIPS, this could make your life easier as target type support is built-in with 1.2.
Oh yeah. On a related note: if you're interested in posix-C development on Symbian, Erik Jacobson (Symbian's product manager for Open Environment & PIPS) seems to be pretty active on the Symbian blog. Which, as anything cool on the web these days, seems to still be in beta.

Here's another screencast... By Tim Kelly, a Forum Nokia Champion and a developer on our team. In the screencast, Tim showcases the build system options and operation. The new build system is quite significantly different than the one used in Carbide.c++ 1.1, and I think you'll find it easy to use and intuitive. If not, let me know!
View the screencast here (Finally, in Flash!). English captions are provided!
I've also updated the MMP editor screencast to run on Flash. It also has english captions. Download it here.
I'm a new at this so be gentle -- but I've just created a short (~7 minute) screencast on Carbide.c++ 1.2 that highlights one of the new features in this release, the MMP. The MMP editor provides a visual editor into the actual MMP file, and simplifies some of the management tasks associated with working with MMPs. I'm hoping it'll be a great way for new developers to learn the MMP model, and that experienced developers will enjoy having less hassle to deal with. Let me know what you think!
Download the screencast here (It's Windows Media Video - WMV).
Update: The screencast is now easier on the eyes (Flash format, not WMV), and has English subtitles. Download it here.
Carbide.c++ 1.2 has been in development since September. The product improves on some of the key areas where 1.1 users were left wanting. Most significantly, 1.2 has a completely re-designed build system that imports and builds complex projects with ease, and provides nice usability enhancements like an MMP and INF editor. It also introduces our most advanced product, the OEM Edition. Eric from NewLC has the details on the product plans...
The Alpha release of 1.2 is already available to those who have signed up to participate in the beta program. We're planning to provide a number of drops to the beta group before releasing the product (currently targeted for May 2007). If you want to participate in the beta program, you can sign up by clicking here.
Just a quick note to update on our status in platform security tooling: The capability scanner is currently under development here at Nokia, and the certificate manager will be developed by Symbian. We're currently anticipating getting the capability scanner into beta around Christmas; final product to be available first as a plug-in for Carbide.c++ 1.1 in February, and then integrated into Carbide.c++ 1.2 in May. I haven't received any commitment from Symbian on the certificate manager, but I trust it'll be ready during Q1 as well. After that, platform security should be a little less annoying...
Our only remaining problem is the quality of the API-Capability documentation that is used as a the basis for the capability scanning. Apparently, Symbian's documentation on the subject is in pretty good shape, but our SDK documentation on the topic is a little shaky and needs improvement before we can call it a day. However, I think everyone in Nokia is feeling the platform security headache, so roadblocks are quickly being reduced.