diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.cpp b/src/plugins/cmakeprojectmanager/cmakeproject.cpp
index 6d836388f025220554a703b084b117d52e885ae0..070aec39d62c08420691d34f7ff57953d51c268c 100644
--- a/src/plugins/cmakeprojectmanager/cmakeproject.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeproject.cpp
@@ -40,6 +40,7 @@
 #include "cmakestep.h"
 #include "makestep.h"
 
+#include <projectexplorer/projectexplorerconstants.h>
 #include <cpptools/cppmodelmanagerinterface.h>
 #include <extensionsystem/pluginmanager.h>
 #include <utils/qtcassert.h>
@@ -103,7 +104,7 @@ void CMakeProject::parseCMakeLists()
         } else {
             // TODO hmm?
         }
-        if (newToolChain == m_toolChain) {
+        if (ProjectExplorer::ToolChain::equals(newToolChain, m_toolChain)) {
             delete newToolChain;
             newToolChain = 0;
         } else {
@@ -158,6 +159,21 @@ void CMakeProject::parseCMakeLists()
     }
 }
 
+QString CMakeProject::buildParser(const QString &buildConfiguration) const
+{
+    if (!m_toolChain)
+        return QString::null;
+    if (m_toolChain->type() == ProjectExplorer::ToolChain::GCC
+        || m_toolChain->type() == ProjectExplorer::ToolChain::LinuxICC
+        || m_toolChain->type() == ProjectExplorer::ToolChain::MinGW) {
+        return ProjectExplorer::Constants::BUILD_PARSER_GCC;
+    } else if (m_toolChain->type() == ProjectExplorer::ToolChain::MSVC
+               || m_toolChain->type() == ProjectExplorer::ToolChain::WINCE) {
+        return ProjectExplorer::Constants::BUILD_PARSER_MSVC;
+    }
+    return QString::null;
+}
+
 QStringList CMakeProject::targets() const
 {
     QStringList results;
diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.h b/src/plugins/cmakeprojectmanager/cmakeproject.h
index 3494441489ef9be686fd14b1a25af23fcd97fb00..4c9b2e1d529c3241f2d2238cf694f3441ed217c7 100644
--- a/src/plugins/cmakeprojectmanager/cmakeproject.h
+++ b/src/plugins/cmakeprojectmanager/cmakeproject.h
@@ -105,6 +105,7 @@ public:
     MakeStep *makeStep() const;
     CMakeStep *cmakeStep() const;
     QStringList targets() const;
+    QString buildParser(const QString &buildConfiguration) const;
 
 private:
     void parseCMakeLists();
diff --git a/src/plugins/cmakeprojectmanager/makestep.cpp b/src/plugins/cmakeprojectmanager/makestep.cpp
index 60f5d04903ebd5398b481d91ef70f5231678b335..44476f6fbe7b2860ae64c70d12bd264dd14e7d40 100644
--- a/src/plugins/cmakeprojectmanager/makestep.cpp
+++ b/src/plugins/cmakeprojectmanager/makestep.cpp
@@ -34,6 +34,7 @@
 #include "makestep.h"
 #include "cmakeprojectconstants.h"
 #include "cmakeproject.h"
+#include <extensionsystem/pluginmanager.h>
 
 #include <utils/qtcassert.h>
 #include <QtGui/QFormLayout>
@@ -42,6 +43,11 @@
 #include <QtGui/QLineEdit>
 #include <QtGui/QListWidget>
 
+namespace {
+bool debug = false;
+}
+
+
 using namespace CMakeProjectManager;
 using namespace CMakeProjectManager::Internal;
 
@@ -52,10 +58,42 @@ MakeStep::MakeStep(CMakeProject *pro)
 
 MakeStep::~MakeStep()
 {
+    delete m_buildParser;
+    m_buildParser = 0;
 }
 
 bool MakeStep::init(const QString &buildConfiguration)
 {
+    // TODO figure out the correct build parser
+    delete m_buildParser;
+    m_buildParser = 0;
+    QString buildParser = m_pro->buildParser(buildConfiguration);
+    QList<ProjectExplorer::IBuildParserFactory *> buildParserFactories =
+            ExtensionSystem::PluginManager::instance()->getObjects<ProjectExplorer::IBuildParserFactory>();
+
+    foreach (ProjectExplorer::IBuildParserFactory * factory, buildParserFactories)
+        if (factory->canCreate(buildParser)) {
+            m_buildParser = factory->create(buildParser);
+            break;
+        }
+    if (m_buildParser) {
+        connect(m_buildParser, SIGNAL(addToOutputWindow(const QString &)),
+                this, SIGNAL(addToOutputWindow(const QString &)),
+                Qt::DirectConnection);
+        connect(m_buildParser, SIGNAL(addToTaskWindow(const QString &, int, int, const QString &)),
+                this, SLOT(slotAddToTaskWindow(const QString &, int, int, const QString &)),
+                Qt::DirectConnection);
+        connect(m_buildParser, SIGNAL(enterDirectory(const QString &)),
+                this, SLOT(addDirectory(const QString &)),
+                Qt::DirectConnection);
+        connect(m_buildParser, SIGNAL(leaveDirectory(const QString &)),
+                this, SLOT(removeDirectory(const QString &)),
+                Qt::DirectConnection);
+    }
+
+    m_openDirectories.clear();
+    addDirectory(m_pro->buildDirectory(buildConfiguration));
+
     setEnabled(buildConfiguration, true);
     setWorkingDirectory(buildConfiguration, m_pro->buildDirectory(buildConfiguration));
     setCommand(buildConfiguration, "make"); // TODO give full path here?
@@ -89,6 +127,79 @@ bool MakeStep::immutable() const
     return true;
 }
 
+void MakeStep::stdOut(const QString &line)
+{
+    if (m_buildParser)
+        m_buildParser->stdOutput(line);
+    AbstractProcessStep::stdOut(line);
+}
+
+void MakeStep::stdError(const QString &line)
+{
+    if (m_buildParser)
+        m_buildParser->stdError(line);
+    AbstractProcessStep::stdError(line);
+}
+
+void MakeStep::slotAddToTaskWindow(const QString & fn, int type, int linenumber, const QString & description)
+{
+    QString filePath = fn;
+    if (!filePath.isEmpty() && !QDir::isAbsolutePath(filePath)) {
+        // We have no save way to decide which file in which subfolder
+        // is meant. Therefore we apply following heuristics:
+        // 1. Search for unique file in directories currently indicated as open by GNU make
+        //    (Enter directory xxx, Leave directory xxx...) + current directory
+        // 3. Check if file is unique in whole project
+        // 4. Otherwise give up
+
+        filePath = filePath.trimmed();
+
+        QList<QFileInfo> possibleFiles;
+        foreach (const QString &dir, m_openDirectories) {
+            QFileInfo candidate(dir + QLatin1Char('/') + filePath);
+            if (debug)
+                qDebug() << "Checking path " << candidate.filePath();
+            if (candidate.exists()
+                    && !possibleFiles.contains(candidate)) {
+                if (debug)
+                    qDebug() << candidate.filePath() << "exists!";
+                possibleFiles << candidate;
+            }
+        }
+        if (possibleFiles.count() == 0) {
+            if (debug)
+                qDebug() << "No success. Trying all files in project ...";
+            QString fileName = QFileInfo(filePath).fileName();
+            foreach (const QString &file, project()->files(ProjectExplorer::Project::AllFiles)) {
+                QFileInfo candidate(file);
+                if (candidate.fileName() == fileName) {
+                    if (debug)
+                        qDebug() << "Found " << file;
+                    possibleFiles << candidate;
+                }
+            }
+        }
+        if (possibleFiles.count() == 1)
+            filePath = possibleFiles.first().filePath();
+        else
+            qWarning() << "Could not find absolute location of file " << filePath;
+    }
+    emit addToTaskWindow(filePath, type, linenumber, description);
+}
+
+void MakeStep::addDirectory(const QString &dir)
+{
+    if (!m_openDirectories.contains(dir))
+        m_openDirectories.insert(dir);
+}
+
+void MakeStep::removeDirectory(const QString &dir)
+{
+    if (m_openDirectories.contains(dir))
+        m_openDirectories.remove(dir);
+}
+
+
 CMakeProject *MakeStep::project() const
 {
     return m_pro;
@@ -154,7 +265,6 @@ void MakeBuildStepConfigWidget::init(const QString &buildConfiguration)
     }
     // and connect again
     connect(m_targetsList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*)));
-
 }
 
 //
diff --git a/src/plugins/cmakeprojectmanager/makestep.h b/src/plugins/cmakeprojectmanager/makestep.h
index fbfc007dbe44362154e5ee06e05a41b6115254cc..012fb837bc61fd8f6516374c6510c7cf6376acbb 100644
--- a/src/plugins/cmakeprojectmanager/makestep.h
+++ b/src/plugins/cmakeprojectmanager/makestep.h
@@ -64,8 +64,17 @@ public:
     CMakeProject *project() const;
     bool buildsTarget(const QString &buildConfiguration, const QString &target) const;
     void setBuildTarget(const QString &buildConfiguration, const QString &target, bool on);
+private slots:
+    void slotAddToTaskWindow(const QString & fn, int type, int linenumber, const QString & description);
+    void addDirectory(const QString &dir);
+    void removeDirectory(const QString &dir);
+protected:
+    virtual void stdOut(const QString &line);
+    virtual void stdError(const QString &line);
 private:
     CMakeProject *m_pro;
+    ProjectExplorer::BuildParserInterface *m_buildParser;
+    QSet<QString> m_openDirectories;
 };
 
 class MakeBuildStepConfigWidget :public ProjectExplorer::BuildStepConfigWidget
diff --git a/src/plugins/qt4projectmanager/buildparserfactory.cpp b/src/plugins/projectexplorer/buildparserfactory.cpp
similarity index 95%
rename from src/plugins/qt4projectmanager/buildparserfactory.cpp
rename to src/plugins/projectexplorer/buildparserfactory.cpp
index 9b52fafb23be7c833addd046bd9309b9a1175882..2cad67e2145ec98f48f1e716d026a6122dd8a245 100644
--- a/src/plugins/qt4projectmanager/buildparserfactory.cpp
+++ b/src/plugins/projectexplorer/buildparserfactory.cpp
@@ -33,11 +33,11 @@
 
 #include "buildparserfactory.h"
 
-#include "qt4projectmanagerconstants.h"
+#include "projectexplorerconstants.h"
 #include "gccparser.h"
 #include "msvcparser.h"
 
-using namespace Qt4ProjectManager::Internal;
+using namespace ProjectExplorer::Internal;
 
 GccParserFactory::~GccParserFactory()
 {
diff --git a/src/plugins/qt4projectmanager/buildparserfactory.h b/src/plugins/projectexplorer/buildparserfactory.h
similarity index 94%
rename from src/plugins/qt4projectmanager/buildparserfactory.h
rename to src/plugins/projectexplorer/buildparserfactory.h
index a52c33f719323800d01e77cc7a47d694ca220e75..98690d250764fdf76bd81f4dc75893ab8cc4bb00 100644
--- a/src/plugins/qt4projectmanager/buildparserfactory.h
+++ b/src/plugins/projectexplorer/buildparserfactory.h
@@ -36,14 +36,14 @@
 
 #include <projectexplorer/buildparserinterface.h>
 
-namespace Qt4ProjectManager {
+namespace ProjectExplorer {
 namespace Internal {
 
 class GccParserFactory : public ProjectExplorer::IBuildParserFactory
 {
     Q_OBJECT
 public:
-    GccParserFactory() {};
+    GccParserFactory() {}
     virtual ~GccParserFactory();
     virtual bool canCreate(const QString & name) const;
     virtual ProjectExplorer::BuildParserInterface * create(const QString & name) const;
@@ -53,13 +53,13 @@ class MsvcParserFactory : public ProjectExplorer::IBuildParserFactory
 {
     Q_OBJECT
 public:
-    MsvcParserFactory() {};
+    MsvcParserFactory() {}
     virtual ~MsvcParserFactory();
     virtual bool canCreate(const QString & name) const;
     virtual ProjectExplorer::BuildParserInterface * create(const QString & name) const;
 };
 
 } // namespace Internal
-} // namespace Qt4ProjectManager
+} // namespace ProjectExplorer
 
 #endif // BUILDPARSERFACTORY_H
diff --git a/src/plugins/qt4projectmanager/gccparser.cpp b/src/plugins/projectexplorer/gccparser.cpp
similarity index 96%
rename from src/plugins/qt4projectmanager/gccparser.cpp
rename to src/plugins/projectexplorer/gccparser.cpp
index b71a3362f55f12a07c4b559c7d66868542b47caf..97a358a0e4ccbc6ac396602e0dee5c014cd360be 100644
--- a/src/plugins/qt4projectmanager/gccparser.cpp
+++ b/src/plugins/projectexplorer/gccparser.cpp
@@ -32,11 +32,11 @@
 ***************************************************************************/
 
 #include "gccparser.h"
-#include "qt4projectmanagerconstants.h"
+#include "projectexplorerconstants.h"
 
 #include <QDebug>
 
-using namespace Qt4ProjectManager;
+using namespace ProjectExplorer;
 
 GccParser::GccParser()
 {
@@ -56,7 +56,7 @@ GccParser::GccParser()
 
 QString GccParser::name() const
 {
-    return QLatin1String(Qt4ProjectManager::Constants::BUILD_PARSER_GCC);
+    return QLatin1String(ProjectExplorer::Constants::BUILD_PARSER_GCC);
 }
 
 void GccParser::stdOutput(const QString & line)
diff --git a/src/plugins/qt4projectmanager/gccparser.h b/src/plugins/projectexplorer/gccparser.h
similarity index 95%
rename from src/plugins/qt4projectmanager/gccparser.h
rename to src/plugins/projectexplorer/gccparser.h
index 80796f4be2a11b2348b9893e3b81064ef33a3dd7..47e4aae4e136bd29f7ad0114915648f24408683a 100644
--- a/src/plugins/qt4projectmanager/gccparser.h
+++ b/src/plugins/projectexplorer/gccparser.h
@@ -34,11 +34,11 @@
 #ifndef GCCPARSER_H
 #define GCCPARSER_H
 
-#include <projectexplorer/buildparserinterface.h>
+#include "buildparserinterface.h"
 
 #include <QtCore/QRegExp>
 
-namespace Qt4ProjectManager {
+namespace ProjectExplorer {
 
 class GccParser : public ProjectExplorer::BuildParserInterface
 {
diff --git a/src/plugins/qt4projectmanager/msvcparser.cpp b/src/plugins/projectexplorer/msvcparser.cpp
similarity index 95%
rename from src/plugins/qt4projectmanager/msvcparser.cpp
rename to src/plugins/projectexplorer/msvcparser.cpp
index d4a23264c79c2782f2f71bd3e4c19ffaee25cd87..b089638dd1a218c05e59864105ee1dddc5d86634 100644
--- a/src/plugins/qt4projectmanager/msvcparser.cpp
+++ b/src/plugins/projectexplorer/msvcparser.cpp
@@ -32,11 +32,11 @@
 ***************************************************************************/
 
 #include "msvcparser.h"
-#include "qt4projectmanagerconstants.h"
+#include "projectexplorerconstants.h"
 
 #include <QtCore/QStringList>
 
-using namespace Qt4ProjectManager;
+using namespace ProjectExplorer;
 
 MsvcParser::MsvcParser()
 {
@@ -48,7 +48,7 @@ MsvcParser::MsvcParser()
 
 QString MsvcParser::name() const
 {
-    return QLatin1String(Qt4ProjectManager::Constants::BUILD_PARSER_MSVC);
+    return QLatin1String(ProjectExplorer::Constants::BUILD_PARSER_MSVC);
 }
 
 void MsvcParser::stdError(const QString & line)
diff --git a/src/plugins/qt4projectmanager/msvcparser.h b/src/plugins/projectexplorer/msvcparser.h
similarity index 95%
rename from src/plugins/qt4projectmanager/msvcparser.h
rename to src/plugins/projectexplorer/msvcparser.h
index 06e0c3e6d612497e803c70ad15f6327642532d5e..29587cadb6772e0d77e8d45b74ccafb2e92a7e5a 100644
--- a/src/plugins/qt4projectmanager/msvcparser.h
+++ b/src/plugins/projectexplorer/msvcparser.h
@@ -34,11 +34,11 @@
 #ifndef MSVCPARSER_H
 #define MSVCPARSER_H
 
-#include <projectexplorer/buildparserinterface.h>
+#include "buildparserinterface.h"
 
 #include <QtCore/QRegExp>
 
-namespace Qt4ProjectManager {
+namespace ProjectExplorer {
 
 class MsvcParser :  public ProjectExplorer::BuildParserInterface
 {
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index 2380c9b61d644090d9dcb767e8f36ff8ae40a079..c4a94042df5363d56f209239ac2c9e06537cbb0e 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -59,6 +59,7 @@
 #include "scriptwrappers.h"
 #include "session.h"
 #include "sessiondialog.h"
+#include "buildparserfactory.h"
 
 #include <coreplugin/basemode.h>
 #include <coreplugin/coreconstants.h>
@@ -233,6 +234,10 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er
 
     addAutoReleasedObject(new ProjectFileWizardExtension);
 
+    // Build parsers
+    addAutoReleasedObject(new GccParserFactory);
+    addAutoReleasedObject(new MsvcParserFactory);
+
     // context menus
     Core::ActionContainer *msessionContextMenu =
         am->createMenu(Constants::M_SESSIONCONTEXT);
diff --git a/src/plugins/projectexplorer/projectexplorer.pro b/src/plugins/projectexplorer/projectexplorer.pro
index 2cfeecf47cfaac320856662220deeac7f576c998..1feeea4ebd87c6145a9c80537baa526ca7e075c9 100644
--- a/src/plugins/projectexplorer/projectexplorer.pro
+++ b/src/plugins/projectexplorer/projectexplorer.pro
@@ -54,7 +54,10 @@ HEADERS += projectexplorer.h \
     projectmodels.h \
     currentprojectfind.h \
     toolchain.h \
-    cesdkhandler.h
+    cesdkhandler.h\
+    buildparserfactory.h\
+    gccparser.h\
+    msvcparser.h
 SOURCES += projectexplorer.cpp \
     projectwindow.cpp \
     buildmanager.cpp \
@@ -97,7 +100,10 @@ SOURCES += projectexplorer.cpp \
     projectmodels.cpp \
     currentprojectfind.cpp \
     toolchain.cpp \
-    cesdkhandler.cpp
+    cesdkhandler.cpp\ 
+    buildparserfactory.cpp \
+    gccparser.cpp\
+    msvcparser.cpp
 FORMS += dependenciespanel.ui \
     buildsettingspropertiespage.ui \
     processstep.ui \
diff --git a/src/plugins/projectexplorer/projectexplorerconstants.h b/src/plugins/projectexplorer/projectexplorerconstants.h
index e65ca54d099524d1f114829786d46f61f58a523b..183259be10d15d035a4b7e97dcc9642322b1961f 100644
--- a/src/plugins/projectexplorer/projectexplorerconstants.h
+++ b/src/plugins/projectexplorer/projectexplorerconstants.h
@@ -176,6 +176,11 @@ const char * const CPP_HEADER_MIMETYPE = "text/x-c++hdr";
 const char * const FORM_MIMETYPE = "application/x-designer";
 const char * const RESOURCE_MIMETYPE = "application/vnd.nokia.xml.qt.resource";
 
+// build parsers
+const char * const BUILD_PARSER_MSVC    = "BuildParser.MSVC";
+const char * const BUILD_PARSER_GCC     = "BuildParser.Gcc";
+
+
 } // namespace Constants
 } // namespace ProjectExplorer
 
diff --git a/src/plugins/qt4projectmanager/makestep.cpp b/src/plugins/qt4projectmanager/makestep.cpp
index 8e6eb1542d62a6420d2c59e6fa73ef8651508f9b..46683252d0bd420ce149adde9c1427c0fdfbc883 100644
--- a/src/plugins/qt4projectmanager/makestep.cpp
+++ b/src/plugins/qt4projectmanager/makestep.cpp
@@ -36,6 +36,8 @@
 #include "qt4project.h"
 #include "qt4projectmanagerconstants.h"
 
+#include <projectexplorer/projectexplorerconstants.h>
+
 #include <extensionsystem/pluginmanager.h>
 #include <utils/qtcassert.h>
 
@@ -71,9 +73,9 @@ ProjectExplorer::BuildParserInterface *MakeStep::buildParser(const QtVersion * c
     QString buildParser;
     ProjectExplorer::ToolChain::ToolChainType type = version->toolchainType();
     if ( type == ProjectExplorer::ToolChain::MSVC || type == ProjectExplorer::ToolChain::WINCE)
-        buildParser = Constants::BUILD_PARSER_MSVC;
+        buildParser = ProjectExplorer::Constants::BUILD_PARSER_MSVC;
     else
-        buildParser = Constants::BUILD_PARSER_GCC;
+        buildParser = ProjectExplorer::Constants::BUILD_PARSER_GCC;
 
     QList<IBuildParserFactory *> buildParserFactories =
             ExtensionSystem::PluginManager::instance()->getObjects<ProjectExplorer::IBuildParserFactory>();
diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.pro b/src/plugins/qt4projectmanager/qt4projectmanager.pro
index 5e18e1f9d483f888d5287af1446be66f8409777e..04ac5d8067be1459f3427055fda69ed6bf792b4c 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanager.pro
+++ b/src/plugins/qt4projectmanager/qt4projectmanager.pro
@@ -28,9 +28,6 @@ HEADERS = qt4projectmanagerplugin.h \
     makestep.h \
     qmakestep.h \
     qmakebuildstepfactory.h \
-    gccparser.h \
-    msvcparser.h \
-    buildparserfactory.h \
     deployhelper.h \
     embeddedpropertiespage.h \
     qt4runconfiguration.h \
@@ -63,9 +60,6 @@ SOURCES = qt4projectmanagerplugin.cpp \
     makestep.cpp \
     qmakestep.cpp \
     qmakebuildstepfactory.cpp \
-    gccparser.cpp \
-    msvcparser.cpp \
-    buildparserfactory.cpp \
     deployhelper.cpp \
     embeddedpropertiespage.cpp \
     qt4runconfiguration.cpp \
diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h b/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h
index 1ef68a68f5f89bb9301c982360fb983ed6e0ccb8..7261310ff5fbc3a9471cb190b120b29f1ae01968 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h
+++ b/src/plugins/qt4projectmanager/qt4projectmanagerconstants.h
@@ -79,10 +79,6 @@ const char * const GDBMACROSBUILDSTEP = "trolltech.qt4projectmanager.gdbmaros";
 const char * const QT4RUNSTEP = "trolltech.qt4projectmanager.qt4runstep";
 const char * const DEPLOYHELPERRUNSTEP = "trolltech.qt4projectmanager.deployhelperrunstep";
 
-// build parsers
-const char * const BUILD_PARSER_MSVC    = "BuildParser.MSVC";
-const char * const BUILD_PARSER_GCC     = "BuildParser.Gcc";
-
 // views
 const char * const VIEW_DETAILED        = "Qt4.View.Detailed";
 const char * const VIEW_PROFILESONLY    = "Qt4.View.ProjectHierarchy";
diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
index 0d90983aa88f389999da2c8a909283490364ec23..f1df421b6263c8b27971b3577c2115b8598c0e12 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
+++ b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp
@@ -41,7 +41,6 @@
 #include "qt4projectmanagerconstants.h"
 #include "qt4project.h"
 #include "qmakebuildstepfactory.h"
-#include "buildparserfactory.h"
 #include "qtversionmanager.h"
 #include "embeddedpropertiespage.h"
 #include "qt4runconfiguration.h"
@@ -133,9 +132,6 @@ bool Qt4ProjectManagerPlugin::initialize(const QStringList &arguments, QString *
     addAutoReleasedObject(new MakeBuildStepFactory);
     addAutoReleasedObject(new GdbMacrosBuildStepFactory);
 
-    addAutoReleasedObject(new GccParserFactory);
-    addAutoReleasedObject(new MsvcParserFactory);
-
     m_qtVersionManager = new QtVersionManager;
     addObject(m_qtVersionManager);