Cache build breaks Haxe compiling every second time
See original GitHub issueWith many (most) files, I find that compiling will usually fail every second time I try playing my file. This does not happen with my default startup file, so I’m guessing it’s an issue that only occurs when certain objects/nodes are added.
If I turn Cache build off, the problem goes away. Strangely, if I turn it back on, the problem will often not come back.
Here’s the compile error I got from the example file below (from issue #1203 ): Example file
Armory v0.7 ($Id: 4c664c8f854fdcbd5b00f8b7f694545d244c835a $)
OS: linux, Target: krom, GAPI: opengl, Blender: 2.80 (sub 40)
Exporting Scene
Scene exported in 0.017395734786987305
Exported modules: ['audio']
Shader flags: ['_Irr', '_EnvCol', '_Deferred', '_ShadowMap', '_CSM', '_SinglePoint', '_SMAA', '_SSAO']
Running: ['/home/user/Apps/Armory Git/armsdk//nodejs/node-linux64', '/home/user/Apps/Armory Git/armsdk//Kha/make', 'krom', '-g', 'opengl', '--shaderversion', '330', '--parallelAssetConversion', '4', '--to', 'build_untitled/debug']
Using project from /home/user/Downloads
Using Kha from /home/user/Apps/Armory Git/armsdk/Kha
Creating Kha project.
Exporting asset 1 of 4 (Scene.arm).
Exporting asset 2 of 4 (World_irradiance.arm).
Exporting asset 3 of 4 (mesh_Cube.arm).
Exporting asset 4 of 4 (mesh_Suzanne.arm).
Exporting asset 1 of 3 (Material_data.arm).
Exporting asset 2 of 3 (armdefault_data.arm).
Exporting asset 3 of 3 (shader_datas.arm).
Exporting asset 1 of 1 (brdf.png).
Exporting asset 1 of 1 (smaa_area.png).
Exporting asset 1 of 1 (smaa_search.png).
Compiling shader 1 of 20 (Material_mesh.frag.glsl).
Compiling shader 2 of 20 (armdefault_mesh.frag.glsl).
Compiling shader 3 of 20 (armdefault_mesh.vert.glsl).
Compiling shader 4 of 20 (armdefault_shadowmap.frag.glsl).
Compiling shader 5 of 20 (armdefault_shadowmap.vert.glsl).
Compiling shader 6 of 20 (blur_edge_pass.frag.glsl).
Compiling shader 7 of 20 (compositor_pass.frag.glsl).
Compiling shader 8 of 20 (compositor_pass.vert.glsl).
Compiling shader 9 of 20 (deferred_light.frag.glsl).
Compiling shader 10 of 20 (pass.vert.glsl).
Compiling shader 11 of 20 (pass_viewray.vert.glsl).
Compiling shader 12 of 20 (smaa_blend_weight.frag.glsl).
Compiling shader 13 of 20 (smaa_blend_weight.vert.glsl).
Compiling shader 14 of 20 (smaa_edge_detect.frag.glsl).
Compiling shader 15 of 20 (smaa_edge_detect.vert.glsl).
Compiling shader 16 of 20 (smaa_neighborhood_blend.frag.glsl).
Compiling shader 17 of 20 (smaa_neighborhood_blend.vert.glsl).
Compiling shader 18 of 20 (ssao_pass.frag.glsl).
Compiling shader 19 of 20 (world_pass.frag.glsl).
Compiling shader 20 of 20 (world_pass.vert.glsl).
Compiling shader 1 of 8 (painter-colored.frag.glsl).
Compiling shader 2 of 8 (painter-colored.vert.glsl).
Compiling shader 3 of 8 (painter-image.frag.glsl).
Compiling shader 4 of 8 (painter-image.vert.glsl).
Compiling shader 5 of 8 (painter-text.frag.glsl).
Compiling shader 6 of 8 (painter-text.vert.glsl).
Compiling shader 7 of 8 (painter-video.frag.glsl).
Compiling shader 8 of 8 (painter-video.vert.glsl).
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:171: lines 171-175 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/internal/ShadersBuilder.hx:148: lines 148-152 : Cannot iterate backwards
/home/user/Apps/Armory Git/armsdk/Kha/Sources/kha/Shaders.hx:5: lines 5-7 : Defined in this class
Haxe compiler error.
Finished in 4.087145090103149
Build failed, check console
When I have more time, I’ll find a file that has this problem and then experiment with deleting things to see if I can figure out which objects / nodes are triggering this compile bug by a process of elimination.
Issue Analytics
- State:
- Created 5 years ago
- Comments:13 (6 by maintainers)
Top Results From Across the Web
Compiler Usage - Haxe - The Cross-platform Toolkit
The Haxe Compiler then resolves the main class file and begins compilation. The second question usually comes down to providing an argument specifying...
Read more >Conditional Compilation - Haxe - The Cross-platform Toolkit
Haxe allows conditional compilation by using #if , #elseif and #else and checking for compiler flags. Define: Compiler Flag. A compiler flag is...
Read more >The Hxcpp Cache - Haxe - The Cross-platform Toolkit
The hxcpp compile cache is used to share object files between projects. This can alleviate the need to ship static libraries with external...
Read more >Files - Haxe - The Cross-platform Toolkit
cache - Enables compiler cache for files in the group. See compile cache for more details. project - name of project used to...
Read more >Threading - Haxe - The Cross-platform Toolkit
10.12.1 Threading. since Haxe 4.0.0. A unified threading API is available on some sys targets. The compile-time define target.threaded is set when the...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Operating System is Windows 10 64bit. It should be clear from the image. Run time target is default. Whatever the default is. I have no idea. I didn’t change anything. Here is the console output after running it.
Read prefs: C:\Users\Lindows\AppData\Roaming\Blender Foundation\Blender\2.80\config\userpref.blend found bundled python: C:\Users\Lindows\Downloads\Armory_06_win64\Armory\2.80\python Armory: Proxy objects synchronized Read blend: C:\Users\Lindows\Desktop\untitled.blend Project updated to sdk v0.6 ($Id: 988482e02afefe458b00e4dea75db2d01b76e49d $) Project cleaned
Armory v0.6 ($Id: 988482e02afefe458b00e4dea75db2d01b76e49d $) OS: win, Target: krom, GAPI: direct3d11, Blender: 2.80 (sub 44) Exporting Scene Exporting mesh Cube Exporting mesh Suzanne Scene exported in 0.1703634262084961 Exported modules: [‘audio’] Shader flags: [‘_Irr’, ‘_EnvCol’, ‘_Deferred’, ‘_ShadowMap’, ‘_CSM’, ‘_SinglePoint’, ‘_SMAA’, ‘_SSAO’] Running: [‘C:/Users/Lindows/Downloads/Armory_06_win64/Armory/armsdk//nodejs/node.exe’, ‘C:/Users/Lindows/Downloads/Armory_06_win64/Armory/armsdk//Kha/make’, ‘krom’, ‘-g’, ‘direct3d11’, ‘–shaderversion’, ‘330’, ‘–parallelAssetConversion’, ‘4’, ‘–to’, ‘build_untitled/debug’, ‘–nohaxe’, ‘–noproject’] Using project from C:\Users\Lindows\Desktop Using Kha from C:\Users\Lindows\Downloads\Armory_06_win64\Armory\armsdk\Kha Creating Kha project. Exporting asset 1 of 4 (Scene.arm). Exporting asset 2 of 4 (World_irradiance.arm). Exporting asset 3 of 4 (mesh_Cube.arm). Exporting asset 4 of 4 (mesh_Suzanne.arm). Exporting asset 1 of 3 (Material_data.arm). Exporting asset 2 of 3 (armdefault_data.arm). Exporting asset 3 of 3 (shader_datas.arm). Exporting asset 1 of 1 (brdf.png). Exporting asset 1 of 1 (smaa_area.png). Exporting asset 1 of 1 (smaa_search.png). Compiling shader 1 of 20 (Material_mesh.frag.glsl). Compiling shader 2 of 20 (armdefault_mesh.vert.glsl). Compiling shader 3 of 20 (armdefault_mesh.frag.glsl). Compiling shader 4 of 20 (armdefault_shadowmap.frag.glsl). Compiling shader 5 of 20 (armdefault_shadowmap.vert.glsl). Compiling shader 6 of 20 (blur_edge_pass.frag.glsl). Compiling shader 7 of 20 (compositor_pass.frag.glsl). Compiling shader 8 of 20 (compositor_pass.vert.glsl). Compiling shader 9 of 20 (deferred_light.frag.glsl). Compiling shader 10 of 20 (pass.vert.glsl). Compiling shader 11 of 20 (pass_viewray.vert.glsl). Compiling shader 12 of 20 (smaa_blend_weight.frag.glsl). Compiling shader 13 of 20 (smaa_blend_weight.vert.glsl). Compiling shader 14 of 20 (smaa_edge_detect.frag.glsl). Compiling shader 15 of 20 (smaa_edge_detect.vert.glsl). Compiling shader 16 of 20 (smaa_neighborhood_blend.frag.glsl). Compiling shader 17 of 20 (smaa_neighborhood_blend.vert.glsl). Compiling shader 18 of 20 (ssao_pass.frag.glsl). Compiling shader 19 of 20 (world_pass.frag.glsl). Compiling shader 20 of 20 (world_pass.vert.glsl). Compiling shader 1 of 8 (painter-colored.frag.glsl). Compiling shader 2 of 8 (painter-colored.vert.glsl). Compiling shader 3 of 8 (painter-image.frag.glsl). Compiling shader 4 of 8 (painter-image.vert.glsl). Compiling shader 5 of 8 (painter-text.frag.glsl). Compiling shader 6 of 8 (painter-text.vert.glsl). Compiling shader 7 of 8 (painter-video.vert.glsl). Compiling shader 8 of 8 (painter-video.frag.glsl). Done. Finished in 52.66131615638733
Should be resolved with https://github.com/armory3d/armory/commit/120354ffa845fc047960a8bc1bb4bbfcb7f0cbcb.