See into S60
» 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)
» Tommi's Reports from Wonderland
» Voice of S60
» Creating Carbide C++
» S60 Multimedia Blog
» The Convergence Zone
» Web Browser for S60 Blog
» Consumed by S60
» Java for S60
» Mobile Web Server
» Mobile Security
» See into S60
» Business2GO
» Nokia Podcasting Application Blog
» Tips for using the CodeScanner tool!
» Online Carbide documentation push
» Code Scanner is a champ!
» New controversial addition in v1.3
» Version Control and Carbide
» July 2008
» June 2008
» May 2008
» April 2008
» March 2008
» February 2008
» August 2007
» May 2007
» April 2007
» March 2007
» February 2007
» January 2007
» December 2006
» November 2006
» October 2006
» September 2006
» August 2006
» July 2006
» June 2006
Subscribe
Links
July 03, 2008 Tips for using the CodeScanner tool! Posted by Matt Salmo at 01:34 PM | Categories: Carbide.c++ 1.3.x, Product features, Screencast, Support, Usability

Have you ever wondered exactly how to use the CodeScanner tool? Well if so, you're in luck! This week's screencast installment features this topic:

codescanner.png

You can find this and other videos at: http://wiki.forum.nokia.com/index.php/Carbide_Training_Videos

Got ideas for screencasts you'd like to see? Leave us some feedback here and we'll get on it!

Permalink | Comments (1) |
May 09, 2008 Online Carbide documentation push Posted by L. Frank Turovich at 10:27 AM | Categories: Future directions, Off-topic, Product features, Support, Usability

One of the more ambitious ideas I have for the next release of Carbide is to throw all of the public Carbide docs onto a website using the Eclipse Infocenter. One of the drivers to do this is to make the information available to Google searches. Most people, including myself, have developed the habit of simply doing a Google search for anything we want and simply ignoring our local resources. In many cases I believe that people sometimes actually forget that they have product documentation on their machine. And let's face it, searching the web has become both a habit and the way things are done.

Continue reading "Online Carbide documentation push" »

Permalink | Comments (3) |
May 01, 2008 Code Scanner is a champ! Posted by Vasili Prikhodko at 09:33 PM | Categories: Product features

Today I did a presentation of our tools at our large Boston customer and got a great positive feedback about Code Scanner feature. Developers say that it is so easy, intuitive to use and gives such a great suggestions about the fixes that they don't fix the code scanner errors themselves but rather let testers who aspire to become developers do it!

To investigate the performance of Code Scanner we ran it on the whole common Symbian/s60 sources directory and the scan completed in ~4 hours on a fairly recent PC. There was a big bunch of errors/warnings. The amount of errors is going down gradually though. We illuminated all the Code Scanner errors in TRK and PI sources last year. It is a good practice to run it every time you modify/fix something in your s60/Symbian code!

Permalink | Comments (0) |
April 19, 2008 New controversial addition in v1.3 Posted by Vasili Prikhodko at 09:47 PM | Categories: Product features

If you are a power user of Carbide or simply poking around the tools, you will notice the new window that is available and functional for emulation debugging in Carbide v1.3. You can access it via the toolbar 'Window'->Open View->Modules View. Once open it will appear by default in the lower pane of the carbide, tabbed together with 'Console', 'Executables' view, etc. During a debug session it will be filled with the executables that are currently loaded into the emulator and you have the projects that build these executables in your workspace or added them to the "Executables" tab of your launch configuration.

Some people may be confused by this window, since it resembles the 'Executables' window functionality, that was well described in the blog by Ken in this entry.

The difference between these windows is that 'Executables' window has the list of all executables that are known to the Carbide, no matter whether they are loaded into the emulator or not and it is always filled and independent of the debug session. 'Modules' view will only be filled with the information during the debug session. This is so called run-time information about the debugging target. And the purpose of it is to show what is running on target that the debugger knows about and has control over. It will not show you the list of files, beloning to the executable but rather the list of methods and other symbols. Ever wondered why your breakpoints are not being hit?

When debugging with TRK you will not get this information in v1.3. I am adding this support now. And it should be there in v1.3.1. Please, let us know if you are confused or not sure if this view is really necessary or helpful or creates more confusion rather then provides useful info.

Permalink | Comments (0) |
April 03, 2008 Version Control and Carbide Posted by Tim Kelly at 09:58 PM | Categories: FAQ, General, Product features, Tool setup

Without doubt, besides the eclipse editor, the Team features (version control) are the most often used features in my daily development grind. Given that, I am doing mostly java development these days writing Carbide plugins and test suites. For java development, version control is pretty straight forward. It's not quite so simple for Carbide development, but it can be done with just a little more effort. So at the risk of over simplifying or generalizing I'll give you a couple of ways of working with version controls systems and some things to look out for. I can't speak for all version control systems (we use CVS) but I think once you get version control going under an eclipse environment you'll wonder how you lived without it.

Continue reading "Version Control and Carbide" »

Permalink | Comments (4) |
March 31, 2008 How the Capability Scanner Works Posted by Tim Kelly at 10:23 AM | Categories: Product features

Mike Trujillo just posted a demo of how to use the capability scanner. If you've not used this feature before this is a pretty good (and short) video tutorial to check out. The Capability Scanner is currently supported on all S60 3rd edition SDKs. If you want to know how it works behind the scenes read on...

cap_scanner_screen_cast_screenshot.JPG

Continue reading "How the Capability Scanner Works" »

Permalink | Comments (0) |
March 04, 2008 Get Back to Where You Once Belonged. Posted by Tim Kelly at 09:06 PM | Categories: General, Product features

Not exactly what Sir Paul had in mind, but one the most overlooked features I've seen Cabride developers completly miss out on is Eclipse's resource history tracking. Every time you save a file after editing in Carbide, a copy of the file is kept in the workspace under the ".metadata\.plugins\org.eclipse.core.resources\.history\" folder. During the course of a day you may be working on several updates to a file or files and only want to keep a few of them. You can compare any two revisions in time my simply selecting the file, right-clicking and choosing Compare With > Local History...

compare_with_local_history.JPG

If you select the latest version and another previous date while holding down the CTRL key, you can then open the context menu and select Compare with Each Other.

compare_with_each_other.JPG

Then the Compare Editor opens up and you can choose what changes you want to keep which changes to merge out before you check your code in.

c_compare_viewer.JPG

It can also be handy to check out how Carbide and other source generation plugins are modifying sources and project files. For example, you can use the visual MMP INF editors over time and use the local history cache to see how the visual editor is modifying the underlying text files.

Even cooler, the Eclipse platform keeps these histories around even when you delete the files. So if you are re-arranging files and/or deleting sources you can select a project, right click and choose Restore from Local History...

Wa-la! Now you can get back to where.... you get the idea.

And of course, all this functionality ties in quite nicely with the Team featreus (version control add-ins) where you can view and compare histories of files from source repositories and compare your working workspace sources to existing versions from your version control system.

Permalink | Comments (1) |
April 25, 2007 RELEASED: Carbide.c++ 1.2 Posted by Markus Ahonen at 09:54 PM | Categories: Carbide.c++ 1.2, FAQ, General, Product features, Product releases

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.

Permalink | Comments (6) |
February 15, 2007 Screencast: Carbide.c++ 1.2 sneak preview - Build system Posted by Markus Ahonen at 04:57 PM | Categories: Carbide.c++ 1.2, Product features, Screencast, Work in Progress, Write-build-debug

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.

Permalink | Comments (1) |
February 02, 2007 Screencast: Carbide.c++ 1.2 sneak preview - MMP editor Posted by Markus Ahonen at 03:46 PM | Categories: Carbide.c++ 1.2, Product features, Screencast, Work in Progress, Write-build-debug

 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.

Permalink | Comments (0) |