diff --git a/src/plugins/cmakeprojectmanager/cmakepreloadcachekitconfigwidget.cpp b/src/plugins/cmakeprojectmanager/cmakepreloadcachekitconfigwidget.cpp
index 58793fedf3af34ee286bd1a38bdc4bbd348d949b..0141d822779de333bc4d3168fdf773d8956c1e1c 100644
--- a/src/plugins/cmakeprojectmanager/cmakepreloadcachekitconfigwidget.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakepreloadcachekitconfigwidget.cpp
@@ -77,7 +77,7 @@ void CMakePreloadCacheKitConfigWidget::makeReadOnly()
 void CMakePreloadCacheKitConfigWidget::refresh()
 {
     if (!m_ignoreChange)
-        m_lineEdit->setText(CMakePreloadCacheKitInformation::preloadCacheFile(m_kit));
+        m_lineEdit->setText(CMakePreloadCacheKitInformation::preloadCacheFile(m_kit).toUserOutput());
 }
 
 void CMakePreloadCacheKitConfigWidget::preloadFileWasChanged(const QString &text)
diff --git a/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.cpp b/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.cpp
index f3c038be0f513ac1d4903ea1ed821e5968c699fc..0b1d44066f9c9199b5fc2dba0359847a4eae5fe8 100644
--- a/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.cpp
@@ -86,18 +86,18 @@ KitConfigWidget *CMakePreloadCacheKitInformation::createConfigWidget(Kit *k) con
     return new Internal::CMakePreloadCacheKitConfigWidget(k, this);
 }
 
-void CMakePreloadCacheKitInformation::setPreloadCacheFile(Kit *k, const QString &preload)
+void CMakePreloadCacheKitInformation::setPreloadCacheFile(Kit *k, const Utils::FileName &preload)
 {
     if (!k)
         return;
-    k->setValue(CMakePreloadCacheKitInformation::id(), preload);
+    k->setValue(CMakePreloadCacheKitInformation::id(), preload.toString());
 }
 
-QString CMakePreloadCacheKitInformation::preloadCacheFile(const Kit *k)
+Utils::FileName CMakePreloadCacheKitInformation::preloadCacheFile(const Kit *k)
 {
     if (!k)
-        return QString();
-    return k->value(CMakePreloadCacheKitInformation::id()).toString();
+        return Utils::FileName();
+    return Utils::FileName::fromString(k->value(CMakePreloadCacheKitInformation::id()).toString());
 }
 
 } // namespace CMakeProjectManager
diff --git a/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.h b/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.h
index 1761441b05dbd33eb166d5b319e7ccefa945af09..2cdb36c0fb5f04b6531744867f5ca527ee2d085e 100644
--- a/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.h
+++ b/src/plugins/cmakeprojectmanager/cmakepreloadcachekitinformation.h
@@ -52,8 +52,8 @@ public:
     ItemList toUserOutput(const ProjectExplorer::Kit *k) const override;
     ProjectExplorer::KitConfigWidget *createConfigWidget(ProjectExplorer::Kit *k) const override;
 
-    static void setPreloadCacheFile(ProjectExplorer::Kit *k, const QString &preload);
-    static QString preloadCacheFile(const ProjectExplorer::Kit *k);
+    static void setPreloadCacheFile(ProjectExplorer::Kit *k, const Utils::FileName &preload);
+    static Utils::FileName preloadCacheFile(const ProjectExplorer::Kit *k);
 };
 
 } // namespace CMakeProjectManager
diff --git a/src/plugins/cmakeprojectmanager/generatorinfo.cpp b/src/plugins/cmakeprojectmanager/generatorinfo.cpp
index ae45a918bd9f4c72bdeff7f442a5fbf05ce9a763..44a1b121c152540d1495bced6c5cfa2a86e705b8 100644
--- a/src/plugins/cmakeprojectmanager/generatorinfo.cpp
+++ b/src/plugins/cmakeprojectmanager/generatorinfo.cpp
@@ -96,7 +96,7 @@ QByteArray GeneratorInfo::generatorArgument() const
 
 QString GeneratorInfo::preLoadCacheFileArgument() const
 {
-    const QString tmp = CMakePreloadCacheKitInformation::preloadCacheFile(m_kit);
+    const QString tmp = CMakePreloadCacheKitInformation::preloadCacheFile(m_kit).toUserOutput();
     return tmp.isEmpty() ? QString() : QString::fromLatin1("-C") + tmp;
 }