ios: fixing DYLD_FALLBACK_FRAMEWORK_PATH

adding /System/Library/Frameworks for completeness

Change-Id: If2fbe015af591eb3ff820b2ea2f732b2d4c08e01
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
This commit is contained in:
Fawzi Mohamed
2013-12-04 12:57:07 +01:00
parent 5bc6f1e390
commit fccffba04b

View File

@@ -204,12 +204,15 @@ IosToolHandlerPrivate::IosToolHandlerPrivate(IosToolHandler::DeviceType devType,
foreach (const QString &k, env.keys())
if (k.startsWith(QLatin1String("DYLD_")))
env.remove(k);
QStringList frameworkPaths;
QString xcPath = IosConfigurations::developerPath().appendPath(QLatin1String("../OtherFrameworks")).toFileInfo().canonicalFilePath();
env.insert(QLatin1String("DYLD_FALLBACK_FRAMEWORK_PATH"),
xcPath.isEmpty() ?
QString::fromLatin1("/System/Library/PrivateFrameworks")
: (xcPath + QLatin1String(":/System/Library/PrivateFrameworks")));
if (!xcPath.isEmpty())
frameworkPaths << xcPath;
frameworkPaths << QLatin1String("/System/Library/Frameworks")
<< QLatin1String("/System/Library/PrivateFrameworks");
env.insert(QLatin1String("DYLD_FALLBACK_FRAMEWORK_PATH"), frameworkPaths.join(QLatin1Char(':')));
if (debugToolHandler)
qDebug() << "IosToolHandler runEnv:" << env.toStringList();
process.setProcessEnvironment(env);
QObject::connect(&process, SIGNAL(readyReadStandardOutput()), q, SLOT(subprocessHasData()));
QObject::connect(&process, SIGNAL(finished(int,QProcess::ExitStatus)),