You probably need something like this pseudo code (i did not compiled the code, nor did i test it):
// Get the current project
cbProject* project = Manager::Get()->GetProjectManager()->GetActiveProject();
// Get the debug build target
ProjectBuildTarget* target = project ->GetBuildTarget(wxT("debug"));
PluginsArray arr = Manager::Get()->GetPluginManager()->GetCompilerOffers();
cbCompilerPlugin* comp;
for(size_t i = 0; i < arr.size(); ++i)
{
comp = dynamic_cast<cbCompilerPlugin*>(arr[i])
if(comp)
{
// here you should check if this is the right compiler. No idea how you can do this
break;
}
}
comp->Build(target);
if(comp->GetExitCode() != 0)
{
//compiling failed
}