armory3d / armory

3D Engine with Blender Integration
https://armory3d.org
zlib License
3.05k stars 317 forks source link

Build Fail - 64bit Linux, Armory Builds 3 & 4 #64

Closed zauberparacelsus closed 7 years ago

zauberparacelsus commented 7 years ago
Use Avastar's native template system
read blend: /home/zauber/Armory/ArmoryTest.blend
Error, region type 4 missing in - name:"Action", id:12
Scene built in 0.002378225326538086
luboslenco commented 7 years ago

Hi,

Is this the full output? Blend file is always helpful if possible.

zauberparacelsus commented 7 years ago

Full output is as follows:

zauber@daedalusMK3:~/Desktop/blender-2.77a-linux-glibc211-x86_64$ ./blenderconnect failed: No such file or directory
Read new prefs: /home/zauber/.config/blender/2.77/config/userpref.blend
found bundled python: /home/zauber/Desktop/blender-2.77a-linux-glibc211-x86_64/2.77/python

/home/zauber/.config/blender/2.77/scripts/addons/generic_note.py:61: SyntaxWarning: name 'TW' is assigned to before global declaration
  global TW
archimesh: added to phytonpath
archimesh: Imported multifiles
read blend: /home/zauber/Armory/ArmoryTest.blend
Error, region type 4 missing in - name:"Action", id:12
Scene built in 0.0013649463653564453
Creating Kha project.
Exporting asset 1 of 1 (blur_edge_pass_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (compositor_pass_EnvCol_SSAO_CompoTonemap_CompoFXAA.arm).
Exporting asset 1 of 1 (deferred_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (deferred_indirect_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (deferred_light_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (ssao_pass_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (world_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (brdf.png).
Exporting asset 1 of 1 (noise8.png).
Exporting asset 1 of 1 (Scene.arm).
Exporting asset 1 of 1 (World_irradiance.arm).
Exporting asset 1 of 1 (World_material.arm).
Exporting asset 1 of 1 (mesh_Plane.001.arm).
Exporting asset 1 of 1 (deferred_path_low.arm).
Compiling shader 1 of 1 (blur_edge_pass_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (blur_edge_pass_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (compositor_pass_EnvCol_SSAO_CompoTonemap_CompoFXAA.frag.glsl).
Compiling shader 1 of 1 (compositor_pass_EnvCol_SSAO_CompoTonemap_CompoFXAA.vert.glsl).
Compiling shader 1 of 1 (mesh_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (mesh_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (shadowmap_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (shadowmap_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (deferred_indirect_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (deferred_indirect_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (deferred_light_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (deferred_light_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (ssao_pass_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (ssao_pass_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (world_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (world_EnvCol_SSAO.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).
Haxe compiler error.
Build failed, check console

And I've attached a copy of the .blend file.

ArmoryTest.blend.zip

luboslenco commented 7 years ago

Thanks! Seems to work here so far, also tried running in separate window. Will boot to Linux tonight, hopefully can reproduce it there.

Another idea, maybe Armory does not play well with some add-ons?

test

zauberparacelsus commented 7 years ago

Another idea, maybe Armory does not play well with some add-ons?

Could be. Here's a list of the addons I'm using, though I'm not sure which ones blender has enabled by default:

zauberparacelsus commented 7 years ago

Well, I removed a few addons. Real Camera, Render Music (not listed above) and one of two copies of archimesh (I had manually installed it before it was included in blender).

Play in Viewport still does not work, however. I just get the following output on my command line, which does not reveal any problems:

zauber@daedalusMK3:~/Desktop/blender-2.78a-linux-glibc211-x86_64$ ./blender
Read new prefs: /home/zauber/.config/blender/2.78/config/userpref.blend
found bundled python: /home/zauber/Desktop/blender-2.78a-linux-glibc211-x86_64/2.78/python
version 3 imported

/home/zauber/.config/blender/2.78/scripts/addons/generic_note.py:61: SyntaxWarning: name 'TW' is assigned to before global declaration
  global TW
archimesh: Imported multifiles
read blend: /home/zauber/Armory/ArmoryTest.blend
Scene built in 0.0012497901916503906
Creating Kha project.
Exporting asset 1 of 1 (blur_edge_pass_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (compositor_pass_EnvCol_SSAO_CompoTonemap_CompoFXAA.arm).
Exporting asset 1 of 1 (deferred_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (deferred_indirect_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (deferred_light_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (ssao_pass_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (world_EnvCol_SSAO.arm).
Exporting asset 1 of 1 (brdf.png).
Exporting asset 1 of 1 (noise8.png).
Exporting asset 1 of 1 (Scene.arm).
Exporting asset 1 of 1 (World_irradiance.arm).
Exporting asset 1 of 1 (World_material.arm).
Exporting asset 1 of 1 (mesh_Plane.001.arm).
Exporting asset 1 of 1 (deferred_path_low.arm).
Compiling shader 1 of 1 (blur_edge_pass_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (blur_edge_pass_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (compositor_pass_EnvCol_SSAO_CompoTonemap_CompoFXAA.frag.glsl).
Compiling shader 1 of 1 (compositor_pass_EnvCol_SSAO_CompoTonemap_CompoFXAA.vert.glsl).
Compiling shader 1 of 1 (mesh_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (mesh_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (shadowmap_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (shadowmap_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (deferred_indirect_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (deferred_indirect_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (deferred_light_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (deferred_light_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (ssao_pass_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (ssao_pass_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 1 (world_EnvCol_SSAO.frag.glsl).
Compiling shader 1 of 1 (world_EnvCol_SSAO.vert.glsl).
Compiling shader 1 of 8 (painter-colored.frag.glsl).
Compiling shader 2 of 8 (painter-image.frag.glsl).
Compiling shader 3 of 8 (painter-image.vert.glsl).
Compiling shader 4 of 8 (painter-text.frag.glsl).
Compiling shader 5 of 8 (painter-colored.vert.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).
Haxe compiler error.
Build failed, check console
luboslenco commented 7 years ago

Somehow Haxe compiler has trouble. Is this happening on stand-alone Blender or the bundled one with Armory? (or both?)

zauberparacelsus commented 7 years ago

Standalone blender, I think? I didn't realize a copy of blender was bundled with Armory

zauberparacelsus commented 7 years ago

I get the same error on the bundled copy

luboslenco commented 7 years ago

Just tested on Linux Mint and it works there (also tested Ubuntu earlier). What distro are you using? Have to figure this out.

zauberparacelsus commented 7 years ago

I'm using 64-bit Ubuntu 16.04, with Blender version 2.78a

zauberparacelsus commented 7 years ago

I've tried running Armory on blender after having done a factory reset on blender, so it had all default settings. Same problem :-/

zauberparacelsus commented 7 years ago

My installed haxe version was out of date (3.1.x), so I updated it to 3.2.1. Still having the same problem.

Is Armory capturing/hiding the output of the Haxe compiler and just reporting its own output? And if so, is the haxe compiler's output recorded anywhere that it can be viewed?

luboslenco commented 7 years ago

Armory, (ie. Kha) runs at Haxe 3.3 minimum. But installed Haxe version should not have anything to do with Armory, it includes it on it's own.

Can you locate the compiler at Armory/armsdk/linux64/resources/app/extensions/kha/Kha/Tools/haxe/haxe-linux64? What output do you get running ./haxe-linux64 from terminal in that folder?

zauberparacelsus commented 7 years ago

the linux64 directory does not have an app subdirectory. There is a bin subdir, but it only has kodestudio under it.

zauberparacelsus commented 7 years ago

Okay, the app directory was actually under the linux64/resources directory.

Running ./haxe-linux64 results in a segmentation fault.

luboslenco commented 7 years ago

I apologize, updated previous post with missing 'resources' dir.

zauberparacelsus commented 7 years ago

I ran haxe-linux64 under GDB, and got this:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff66b7202 in GC_find_limit_with_bound ()
   from /usr/lib/x86_64-linux-gnu/libgc.so.1

Then I enter continue...

Continuing.
[New Thread 0x7ffff647c700 (LWP 4753)]
[New Thread 0x7ffff5c7b700 (LWP 4754)]
[New Thread 0x7ffff547a700 (LWP 4755)]
[New Thread 0x7ffff4c79700 (LWP 4756)]
[New Thread 0x7ffff4478700 (LWP 4757)]
[New Thread 0x7ffff3c77700 (LWP 4758)]
[New Thread 0x7ffff3476700 (LWP 4759)]

Thread 1 "haxe-linux64" received signal SIGSEGV, Segmentation fault.
0x00007ffff2834245 in neko_val_id () from /usr/lib/libneko.so.2
luboslenco commented 7 years ago

I tried installing Haxe 3.2.1 on my Ubuntu box to see if there are conflicts but it still seems to run fine here.

Can you try to temporarily uninstall Haxe? Did you try downloading the SDK again in case of corrupted files?

zauberparacelsus commented 7 years ago

I downloaded it, but before unpacking it, I compared the prior preview03 archive with the fresh one, and they both had different sha512 hashes. However, I still have the same problem after unpacking the fresh archive.

Uninstalling Haxe had no effect either.

luboslenco commented 7 years ago

That is odd. Kha now uses latest Haxe 3.4.0 rc1, I will update Armory to include this (in the next build if no issues appear) and we will see if that helps.

zauberparacelsus commented 7 years ago

Issue has not gone away with Build 4

luboslenco commented 7 years ago

Sorry, did not manage to update Kha in time:/ Working on it now.

zauberparacelsus commented 7 years ago

Not entirely sure, but I think the issue may be because I am using an older Ubuntu (16.04), so the system libs may not be what haxe is expecting. That probably explains the GDB output I posted above.

zauberparacelsus commented 7 years ago

I am currently upgrading my system to Ubuntu 16.10. Two months is probably long enough for most of the post-release bugs to have been shaken out, lol. Once the upgrade is done, I'll report whether or not it has fixed the build errors in Armory.

zauberparacelsus commented 7 years ago

Problem continues after upgrading to Ubuntu 16.10 :-/

zauberparacelsus commented 7 years ago

Hmm. Based on the GDB output, it looks like it's using my system's installed version of Neko. A quick check seems to indicate that the Armory SDK does not package its own Neko.

Perhaps the real problem is that it is trying to use an incompatible version of Neko?

zauberparacelsus commented 7 years ago

Problem fixed on my end. The real problem was that I did not have libgc-dev and neko-dev installed.

zauberparacelsus commented 7 years ago

Additional note: libgc-dev is not required to make Armory work for me. Armory continues to work with libgc-dev uninstalled.

The neko-dev package is still required, however. Perhaps the neko headers can be packaged with Armory to prevent this issue in the future?

luboslenco commented 7 years ago

Build 6 will now run out of the box on freshly installed Ubuntu 16.10, but I am still unsure about the neko issues.

luboslenco commented 7 years ago

Using the latest Kha with bundled Haxe now.