diff --git a/src/plugins/qmlprofiler/qmlprofilertool.cpp b/src/plugins/qmlprofiler/qmlprofilertool.cpp index 37c51acdb07..a55b59a1293 100644 --- a/src/plugins/qmlprofiler/qmlprofilertool.cpp +++ b/src/plugins/qmlprofiler/qmlprofilertool.cpp @@ -318,6 +318,19 @@ bool QmlProfilerTool::canRun(RunConfiguration *runConfiguration, RunMode mode) c return false; } +static QString sysroot(RunConfiguration *runConfig) +{ + QTC_ASSERT(runConfig, return QString()); + if (Qt4ProjectManager::Qt4BuildConfiguration *buildConfig = + qobject_cast( + runConfig->target()->activeBuildConfiguration())) { + if (QtSupport::BaseQtVersion *qtVersion = buildConfig->qtVersion()) + return qtVersion->systemRoot(); + } + + return QString(); +} + AnalyzerStartParameters QmlProfilerTool::createStartParameters(RunConfiguration *runConfiguration, RunMode mode) const { Q_UNUSED(mode); @@ -352,6 +365,7 @@ AnalyzerStartParameters QmlProfilerTool::createStartParameters(RunConfiguration sp.connParams = rc3->deviceConfig()->sshParameters(); sp.analyzerCmdPrefix = rc3->commandPrefix(); sp.displayName = rc3->displayName(); + sp.sysroot = sysroot(rc3); } else if (Qt4ProjectManager::S60DeviceRunConfiguration *rc4 = qobject_cast(runConfiguration)) { Qt4ProjectManager::S60DeployConfiguration *deployConf = @@ -361,6 +375,7 @@ AnalyzerStartParameters QmlProfilerTool::createStartParameters(RunConfiguration sp.displayName = rc4->displayName(); sp.connParams.host = deployConf->device()->address(); sp.connParams.port = rc4->debuggerAspect()->qmlDebugServerPort(); + sp.sysroot = sysroot(rc4); } else { // What could that be? QTC_ASSERT(false, return sp);