Rational Team Concert is known for providing an excellent software development platform for Java and .NET applications (with support for Microsoft Visual Studio) but it can also work with a myriad of other programming languages through its flexible and extensible architecture. One of the languages that is often asked about is C/C++ and how Rational Team Concert supports using it. Topics of interest include:
- How do I set up Rational Team Concert to compile and debug C/C++?
- Is it possible to integrate with Rational Team Concert using C/C++?
- How do I manage the source code?
- What about automated builds, how do I use the Build System Tookit to compile C/C++ and provide feedback to the build engine?
- What about automated static code analysis?
- … and automated testing?
In order to answer these questions, I wrote a series of blog posts on my personal blog, “Boris’s Blog”, about C/C++ development on Rational Team Concert. If you or your organization are doing (or plan to do) C/C++ development I invite you to follow along in the first four articles where I cover the following topics:
- OSLC Development using C/C++ and Rational Team Concert (Part 1)
- Getting Started with C/C++ Development Tooling (CDT) and MinGW
- Setting up the IDE
- Hello world C/C++ Project
- Intro to Open Services for Lifecycle Collaboration (OSLC)
- OSLC Development using C/C++ and Rational Team Concert (Part 2)
- Using libxml and libcurl to call RTC services
- C/C++ OSLC Code sample
- Automated builds using C/C++ and Rational Team Concert
- Creating a Makefile for C/C++
- Setting up an automated build for our OSLC code using the Build System Toolkit
Future posts that I write here on the Jazz Team Blog will expand on these topics and include more information on development, building and testing in C/C++ and Rational Team Concert and Jazz in general.
Boris Kuschel
Jazz Jumpstart Team
Hi, Boris,
The source code in the part 2 couldn’t be found.
BTW: Do we have C/C++ sample code for the OSLC Change Request part?
Thanks & Best Regards!
Steven
Hi Steven,
The code should be downloadable from my blog through the link to the OSLC Consumer.zip file. Please let me know if you have any issues accessing it as I was just able to download it succesfully.
Hi,
The problem I have is not being able to load multiple components under one project.
You have to either (1) manually link component projects together, making source parsing setup difficult or (2) just one component with the limitation that brings.
An example demonstrating multi-component C development using RTC would be appreciated.
Hi Oliver,
Take a look at my cppunit example and how I set up the build there, as I am using multiple projects. In my repository I have since put each project in a component. The “exe”, unit tests and a common library.
I created a top level build project (my “exe”) with a Makefile that builds the other components and a common project/component that contains the common library and includes.
While it is true that I have three source directories, they can all “see” each other. Often, in C/C++ source code bundles (cppunit itself is good example), components are often sub directories of the top level primary build target.
Take a look and let me know if you have any questions.
Hi Boris,
When using rtc 3.0IFix1 and indigo, CDT navigation like “open declaration” linkes to empty pages (if looks for files in /jazz/default/[real_file_path]).
I have also opened a Defect at jazz.net:
https://jazz.net/jazz/web/projects/Rational%20Team%20Concert#action=com.ibm.team.workitem.viewWorkItem&id=185028
Maybe you can relate to that?
Thanks,
Yaron