# Error: non-portable path to file when building Unreal Editor for Linux on Windows

**URL:** <https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639>\
**Category:** Platform & Builds\
**Tags:** unreal-build-tool, engine-compile, unreal-engine, bug-report, question\
**Created:** [December 7, 2017, 1:37pm UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639 "2017-12-07T13:37:34Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Geekazoid](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Geekazoid](https://forums.unrealengine.com/u/Geekazoid)\
**Post date:** [December 7, 2017, 1:37pm UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/1 "2017-12-07T13:37:34Z")

</div>

When building the Unreal Editor for Linux on Windows the ShaderCompilerWorker as well as other modules fail to compile:

1\>------ Build started: Project: ShaderCompileWorker, Configuration: Linux\_Development\_Program Win32 ------  
1\> Creating makefile for ShaderCompileWorker (no existing makefile)  
1\> Performing full C++ include scan (no include cache file)  
1\> Using LINUX\_MULTIARCH\_ROOT, building with toolchain ‘D:\Project\LinuxCrossCompileToolChain\v10\_clang-5.0.0-centos7\x86\_64-unknown-linux-gnu’  
1\> Building UnrealHeaderTool…  
1\> Target is up to date  
1\> Total build time: 0.43 seconds (NoActionsToExecute executor: 0.00 seconds)  
1\> Parsing headers for ShaderCompileWorker  
1\> Running UnrealHeaderTool ShaderCompileWorker “d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\ShaderCompileWorker.uhtmanifest” -LogCmds=“loginit warning, logexit warning, logdatabase error” -Unattended -WarningsAsErrors -NoEnginePlugins  
1\> Reflection code generated for ShaderCompileWorker in 4.0282841 seconds  
1\> Using bundled libc++ standard C++ library.  
1\> Using old way to relink circularly dependent libraries (with a FixDeps step).  
1\> Performing 82 actions (4 in parallel)  
1\> [1/82] Compile SharedPCH.Core.h  
1\> [2/82] Compile PCH.Core.h  
1\> [4/82] Compile PCH.CoreUObject.h  
1\> [3/82] Compile SharedPCH.CoreUObject.h  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\Core\PCH.Core.h(46,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Core\Private\CorePrivatePCH.h”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\CoreUObject\PCH.CoreUObject.h(46,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\CoreUObject\Private\CoreUObjectPrivatePCH.h”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\Core\SharedPCH.Core.h(40,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Core\Public\CoreSharedPCH.h”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\CoreUObject\SharedPCH.CoreUObject.h(39,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\CoreUObject\Public\CoreUObjectSharedPCH.h”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Core\Public\CoreSharedPCH.h”  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Runtime\CoreUObject\Private\CoreUObjectPrivatePCH.h”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Core\Private\CorePrivatePCH.h”  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Core\Public\CoreSharedPCH.h”  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\CoreUObject\Private\CoreUObjectPrivatePCH.h”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Core\Private\CorePrivatePCH.h”  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Runtime\CoreUObject\Public\CoreUObjectSharedPCH.h”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\CoreUObject\Public\CoreUObjectSharedPCH.h”  
1\> 1 error generated.  
1\> [5/82] Compile PCH.ImageWrapper.h  
1\> 1 error generated.  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\ImageWrapper\PCH.ImageWrapper.h(46,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\ImageWrapper\Private\ImageWrapperPrivate.h”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Runtime\ImageWrapper\Private\ImageWrapperPrivate.h”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\ImageWrapper\Private\ImageWrapperPrivate.h”  
1\> [6/82] Compile SharedPCH.Slate.h  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\Slate\SharedPCH.Slate.h(50,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Slate\Public\SlateSharedPCH.h”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Slate\Public\SlateSharedPCH.h”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Runtime\Slate\Public\SlateSharedPCH.h”  
1\> 1 error generated.  
1\> [7/82] Compile Module.ShaderCompileWorker.cpp  
1\> 1 error generated.  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\ShaderCompileWorker\Module.ShaderCompileWorker.cpp(2,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Programs\ShaderCompileWorker\Private\ShaderCompileWorker.cpp”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Programs\ShaderCompileWorker\Private\ShaderCompileWorker.cpp”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Programs\ShaderCompileWorker\Private\ShaderCompileWorker.cpp”  
1\> 1 error generated.  
1\>d:\Project\UnrealEngine4.18.1\Engine\Intermediate\Build\Linux\B4D820EA\ShaderCompileWorker\Development\ShaderCompileWorker\Module.ShaderCompileWorker.cpp(3,10): error : non-portable path to file ‘“d\Project\UnrealEngine4.18.1\Engine\Source\Programs\ShaderCompileWorker\Private\XGEControlWorker.cpp”’; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path]  
1\> #include “d:\Project\UnrealEngine4.18.1\Engine\Source\Programs\ShaderCompileWorker\Private\XGEControlWorker.cpp”  
1\> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
1\> “d\Project\UnrealEngine4.18.1\Engine\Source\Programs\ShaderCompileWorker\Private\XGEControlWorker.cpp”  
1\> 2 errors generated.  
1\> 1 error generated.  
1\>ERROR : UBT error : Failed to produce item: d:\Project\UnrealEngine4.18.1\Engine\Binaries\Linux\libShaderCompileWorker-Core.so  
1\> Total build time: 23.98 seconds (Local executor: 0.00 seconds)  
1\>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.MakeFile.Targets(41,5): error MSB3075: The command “…\Build\BatchFiles\Build.bat ShaderCompileWorker Linux Development -waitmutex” exited with code 5. Please verify that you have sufficient rights to run this command.

---

<div class="post-metadata">

**Author:** ![Geekazoid](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Geekazoid](https://forums.unrealengine.com/u/Geekazoid)\
**Post date:** [February 5, 2018, 9:07am UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/2 "2018-02-05T09:07:40Z")

</div>

I have changed the cross compile tool chain to v9\_clang-4.0.0-centos7 and rebuild VS project files and it works.  
It’s a little strange because [A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums](https://wiki.unrealengine.com/Compiling_For_Linux) suggests to use v10 clang 5.0.0-based for ue4.18

I’m now using ue4.18.3, v9\_clang-4.0.0-centos7 and VS2015 update 3.

---

<div class="post-metadata">

**Author:** ![Flash7](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Flash7](https://forums.unrealengine.com/u/Flash7)\
**Post date:** [March 31, 2018, 6:48pm UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/3 "2018-03-31T18:48:05Z")

</div>

By some reason 4.19 complaints if I use V9 clang. So I changed to v11 and I got the same problem as above:

`c:/Unreal/UnrealEngine-release-4.19/Engine/Intermediate/Build/Linux/B4D820EA/UnrealVersionSelector/Development/CoreUObject/PCH.CoreUObject.h(46,10): error : non-portable path to file '"c\\Unreal\UnrealEngine-release-4.19\Engine\Source\Runtime\CoreUObject\Private\CoreUObjectPrivatePCH.h"'; specified path differs in case from file name on disk [-Werror,-Wnonportable-include-path] `

---

<div class="post-metadata">

**Author:** ![Geekazoid](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Geekazoid](https://forums.unrealengine.com/u/Geekazoid)\
**Post date:** [April 9, 2018, 9:07am UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/4 "2018-04-09T09:07:32Z")

</div>

According to the release notes UE4.19 uses cross compile tool chain v11\_clang-5.0.0-centos7 but I’ve tried neither UE4.19 nor v11\_clang-5.0.0.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_12c5b728](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_12c5b728](https://forums.unrealengine.com/u/anonymous_user_12c5b728)\
**Post date:** [April 9, 2018, 10:02am UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/5 "2018-04-09T10:02:26Z")

</div>

[http://www.hptechsupportphonenumbers.com/hp-printer-support/](http://www.hptechsupportphonenumbers.com/hp-printer-support/)

---

<div class="post-metadata">

**Author:** ![NEVQ151](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@NEVQ151](https://forums.unrealengine.com/u/NEVQ151)\
**Post date:** [July 28, 2022, 10:29am UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/6 "2022-07-28T10:29:36Z")

</div>

Hi, sorry for necro but I found this thread when facing the same problem in Unreal 5.0.2. The error states that the case differs for the include, in my case it was:

`#include "Runtime/Core/Public/HAL/PlatformFilemanager.h"` while the filename on disk was indeed `PlatformFileManager.h` with uppercase M. So changing the include to `#include "Runtime/Core/Public/HAL/PlatformFileManager.h"` fixed the error for me. Hope this helps anyone with the same problem.

---

<div class="post-metadata">

**Author:** ![Rogue\_Programmer](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/rogue_programmer/32/731748_2.png) [@Rogue\_Programmer](https://forums.unrealengine.com/u/Rogue_Programmer)\
**Post date:** [September 23, 2023, 8:56pm UTC](https://forums.unrealengine.com/t/error-non-portable-path-to-file-when-building-unreal-editor-for-linux-on-windows/411639/7 "2023-09-23T20:56:13Z")

</div>

Thank you kind stranger.
