Could not find file: Epic Games\4.12\Engine\Intermediate\Build\HTML5\.emscripten

I’m getting the exact same error as Emscripten compile error, missing file - Programming & Scripting - Epic Developer Community Forums When trying to build HTML5, on a brand new Third Person BluePrint project in UE4.12.5.

My project is here: https://github.com//TrustFirstPerson

And the logs are attached [here][1]

I don’t have any extra plugins apart from Git beta which came with the Editor. The only thing I can think of is:

  1. the project was created on a Mac machine
  2. git source control was enabled in editor, but I had to manually turn on git-lfs via command line.
  3. code was checked into github
  4. checked out the code from github in windows and tried to run a HTML5 build.

Other than that, my Unreal 4 is installed on D:\ instead of C:\ .

From reading the above thread, I don’t think this is a duplicate issue. Please help! Thanks in advance.

99811-build.log (320 KB)

,

Are you using the source or binary version of the engine? I see that you’re mentioning code from GitHub, but I wasn’t sure which editor you’re using exactly?

If you’re using the binary version of the engine, I would suggest deleting the HTML5 folder that’s located in Epic Games\4.12\Engine\Intermediate\Build\ and then launching the Epic Games Launcher. Once it’s loaded, click on the down-arrow beside Launch before launching the engine and clicking on verify.

Looking forward to hearing back from you, thanks!

Hi ,

I’m using the binary verison via the Epic Games Launcher. I’ve deleted the HTML5 folder and clicked verify (I actually verified twice already), however I still don’t get the .emscripten folder. See attached screenshot

100342-ue_html5.png

. There is only a UE4 folder.

When I launch using Chrome device, I get the same error as before. I might try deleting the 4.12.5 version, reinstall it again and see what happens. This is a Windows 10 x64 machine by the way. I’ll also have a go on my Macbook too.

I’ve verified the HTML5 build work on my Macbook.

On my windows 10 machine I’ve deleted the whole installation and reinstalled 4.12.5 via the Launcher. There is still no HTML5/.emscripten after installation, but I do get a HTML5/EmscriptenTemp folder after the HTML5 build fails.

,

This issue has been verified as a bug. UE-33958 has been entered. We hope to have this resolved as soon as possible. Feel free to follow up in the near future for updates, or view our Public .

Thanks!

Hi thanks for confirming. Where is UE’s public btw? I can’t find anything on .

Ok found this Unreal Engine Issues and Bug Tracker (UE-33958) Will follow the progress.

, did you install the HTML5 “target platform”?

i pulled down 4.12.5 from the binary launcher - followed your instructions (especially the git-lfs step) - and it packaged fine. so, the only thing i can think of is that you might not have the HTML5 target platform installed.

Hi Nick, thanks for looking into this. I definitely ticked the HTML5 target platform both times. Otherwise:

  • The HTML5 Launch options (Chrome, Firefox etc) wouldn’t be available to me.
  • I won’t have a Epic Games\4.12\Engine\Intermediate\Build\HTML5\ folder in the first place.

I’m wondering do I have to install UE in C:\Program Files? I installed UE in D:\Applications maybe the emscripten folder is hard coded to a C:\ location?

i was wondering about where your EmscriptenTemp folder was…

now that you have it: what happens if you just run the build again.

sometimes, windows needs a kick in the pants – running the build twice (sometimes thrice) gets it going.

i just did a test (nuked my Launcher and installed it on D:)

so, no - you do not have to install it on C:

you can keep it on the D: .

if you are still having errors – can you do a quick test for me?

open a command prompt, and type these in:

add to search path:

  • set path=%path%;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\Win64\node\4.1.1_64bit\bin
  • set path=%path%;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\Win64\clang\e1.35.0_64bit
  • set path=%path%;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\Win64\python\2.7.5.3_64bit
  • set path=%path%;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\emscripten\1.35.0

mimic the build’s profile location:

  • set userprofile=D:\Applications\Epic Games\4.12\Engine\Intermediate\Build\HTML5

finally, test the emscripten command to show the version:

  • emcc -v

please paste the output here.

if successful, you should see a .emscripten file – this only really needs to be run once – and will be used for all of your future HTML5 projects.

i’m really interested in why it’s not being created for you in the first place – this needs to be hunted down.

the test above is basically what’s suppose to be done during the build

i want to know why it’s failing on your rig

I’ve added all the paths permanently (they were not there before) and updated UserProfile for the current shell I’m in. I now get the following error:

\ $ $env:Path
...D:\Developer\Go\bin;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\Win64\node\4.1.1_64bit\bin;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\Win64\clang\e1.35.0_64bit;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\Win64\python\2.7.5.3_64bit;D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\emscripten\1.35.0
\ $
\ $ $env:UserProfile = "D:\Applications\Epic Games\4.12\Engine\Intermediate\Build\HTML5"
\ $
\ $ emcc -v
  File "D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\emscripten\1.35.0\\emcc", line 134
    ''' % (open(shared.path_from_root('site', 'build', 'text', 'docs', 'tools_reference', 'emcc.txt')).read())
      ^
SyntaxError: invalid syntax

For some reason when I open cmd prompt it also opens up PowerShell. So I ended up doing this in PowerShell.

The kick in the pants didn’t work, just go the same error message twice. And still get only the EmscriptenTemp folder

101610-temp.png

a couple of things:

  1. do not add the paths permanently - the emscripten SDK will move to a different folder in 4.13
  2. to open a regular command prompt: type: “WindowsKey+R” and type: “cmd”
  3. i tested this on powershell and it should work too (see attached image

)

for powershell, i dynamically added the search path (for this test), set the userprofile env variable, deleted the existing .emscripten file

then the first time running “emcc -v” – creates the .emscripten file

finally, the second time running “emcc -v” shows the version (1.35.0)…

can you dump your current PATH settings? i want to know if you have something else that might be interfering with your dev env.

thanks!

See attached for my results and path.

I verified I also don’t have this directory:

D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\emscripten\1.35.0\third_party

I do have Java installed however:

\ $ java -version
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)

while i am a huge fan of cygwin - you should remove the c:\cygwin and c:\cygwin\bin path from the search path - having this within the dos/powershell command prompt has given me a lot of problems in the past.

as a tip, i keep my dos path search (as well as cygwin for that matter) really small. i will add the paths i need from within batch files (for dos) and source in paths for bash (and shell scripts).

this has given me the best flexibility and running targeted executables (i.e. i don’t have to wonder which executable might be running)…

i am betting that you will have a .emscripten file in your c:\users\yunzh even though we’ve set the UserProfile path – i’m guessing that some how your cygwin (bash) shell is getting fired up which uses $HOME (and that’s where i see it’s complaining that the Closure path not found in “~/.emscripten”)

I’ve remove the paths but still getting:

~ $ emcc -v
emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 1.35.0
clang version 3.7.0 (https://github.com/kripken/emscripten-fastcomp-clang dbe68fecd03d6f646bd075963c3cc0e7130e5767) (https://github.com/kripken/emscripten-fastcomp.git 4e83be90903250ec5142edc57971ed4c633c5e25)
Target: x86_64-pc-windows-msvc
Thread model: posix
INFO:root:(Emscripten: Running sanity checks)
INFO:root:Closure compiler (D:\Applications\Epic Games\4.12\Engine\Source\ThirdParty\HTML5\emsdk\emscripten\1.35.0\third_party\closure-compiler\compiler.jar) does not exist, check the paths in ~/.emscripten
INFO:root:closure compiler will not be available

And same error when launching:

LogPlayLevel: Program.Main: ERROR: AutomationTool terminated with exception: System.IO.FileNotFoundException: Could not find file 'D:\Applications\Epic Games\4.12\Engine\Intermediate\Build\HTML5\.emscripten'.
LogPlayLevel: File name: 'D:\Applications\Epic Games\4.12\Engine\Intermediate\Build\HTML5\.emscripten'

I don’t have .emscripten in my C:\Users\yunzhi dir either. I’m downloading release 13 preview and see if that makes any difference