How does teamcity support building C++? Incredibuild integration?

Hi,

I will be in the process of investigating which CI framework to use for our team, and I am considering TeamCity as one of them because I'm impressed with what I've seen on the videos and heard from friends. Note that I haven't installed the trial version yet as I'd like some clarification on some points.

We have a mix of projects that are for the most part in VS 2005 and VS 2008:

1. C/C++
2. C++ CLI
3. C#

I know that TeamCity can use MSBuild or NAnt for C#, but how would you go about setting up C/C++ (CLI or not) builds, would it be through the command line runner? If so, what kind of visibility of the build do you lose by going with the command line runner? Any extra work required to hook the output of the builder (say it is VCBuild or Devenv or BuildConsole - see below)?

For C/C++ we use Incredibuild for distributed builds, can it be used by TeamCity? (I know you can distribute builds with TeamCity)

Can TeamCity be running on one machine, but the actual build happening on another machine? Basically have the machine with TeamCity be exclusively the 'coordinator'?

Thanks for the info

5 comments

Hello,

At the moment TeamCity can run such builds via command line runner only. All that you get in this case is a build log (process output) and build status based on the process exit code. If you need to recognize compilation errors then you need to write a plugin.

Can TeamCity be running on one machine, but the actual build happening on another machine? Basically have the machine with TeamCity be exclusively the 'coordinator'?


This is how TeamCity works by default.

--
Pavel Sher

0

Hello,

From the other hand it is possible to run VS solution from VS2005 or VS2008.

It is done by calling MSBuild process on the build agent machine.
This is sln2005 or sln2008 runner to start such builds. Please note,
pure MSBuild does not support at least vdproj projects. If you need to
build such projects you will have to use command-line runner or custom-written
one.

It is possible to run NUnit 2.2 or NUnit 2.4 tests.

For now there is no way to support non CLI c/c++ tests framerowk.
What tests frameworks are used for c/c++ part of you project?
Moreover, it is possible to report all tests' information by printing tests'
result
to console using teamcity service messages format.

Please feel free to ask.

--
Eugene Petrenko
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

Hi,

I will be in the process of investigating which CI framework to use
for our team, and I am considering TeamCity as one of them because I'm
impressed with what I've seen on the videos and heard from friends.
Note that I haven't installed the trial version yet as I'd like some
clarification on some points.

We have a mix of projects that are for the most part in VS 2005 and VS
2008:

1. C/C++
2. C++ CLI
3. C#
I know that TeamCity can use MSBuild or NAnt for C#, but how would you
go about setting up C/C++ (CLI or not) builds, would it be through the
command line runner? If so, what kind of visibility of the build do
you lose by going with the command line runner? Any extra work
required to hook the output of the builder (say it is VCBuild or
Devenv or BuildConsole - see below)?

For C/C++ we use Incredibuild for distributed builds, can it be used
by TeamCity? (I know you can distribute builds with TeamCity)

Can TeamCity be running on one machine, but the actual build happening
on another machine? Basically have the machine with TeamCity be
exclusively the 'coordinator'?

Thanks for the info



0

"Moreover, it is possible to report all tests' information by printing tests' result to console using teamcity service messages format."

Can you direct me to more information on this? My reading is that if my command line tool writes output to console in a certain format then TeamCity can decipher some test result information?

regards,
Anthony.

0

Anthony,

Please refer to the corresponding page in our documentation: http://www.jetbrains.net/confluence/display/TCD3/BuildScriptInteractionwithTeamCity

Also, there is a helper code that allows to report CppUnit tests to TeamCity with a minimum modification of the tests code.

--
Best regards,

Yegor Yarko
Project Manager
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

0

Please sign in to leave a comment.