Crash when building or trying to open .gui files

When trying to build or open any .gui files in the editor, the editor crashes on linux (Pop!_Os 20.10). I’m not the only one to have this issue as there is already an issue on github. (https://github.com/defold/defold/issues/5342)

I have tried running older versions of the editor without any success.

hs_err_pid23254.txt (221.7 KB)

Log (part of it) when running the editor with LD_DEBUG=all

[thread 17526 also had an error]
[thread 17527 also had an error]
#
# A fatal error has been detected by the Java Runtime Environment:
#
#       17471:	symbol=__libc_current_sigrtmin_private;  lookup in file=./packages/jdk11.0.1-p1/bin/java [0]
[thread 17538 also had an error]     17471:	[thread 17522 also had an error]symbol=

__libc_current_sigrtmin_private[thread 17525 also had an error];  lookup in file=/lib/x86_64-linux-gnu/libz.so.1 [
0]
     17471:	symbol=__libc_current_sigrtmin_private;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17471:	symbol=__libc_current_sigrtmin_private;  lookup in file=/home/nick/Applications/Defold/packages/jdk11.0.1-p1/bin/../lib/jli/libjli.so [0]
     17471:	symbol=__libc_current_sigrtmin_private;  lookup in file=/lib/x86_64-linux-gnu/libdl.so.2 [0]
     17471:	symbol=__libc_current_sigrtmin_private;  lookup in file=/lib/x86_64-linux-gnu/libc.so.6 [0]
     17471:	binding file /lib/x86_64-linux-gnu/libpthread.so.0 [0] to /lib/x86_64-linux-gnu/libc.so.6 [0]: normal symbol `__libc_current_sigrtmin_private' [GLIBC_PRIVATE]
SIGSEGV (0xb) at pc=0x00007ff9a8fe1604, pid=17471, tid=17531
#
# JRE version: OpenJDK Runtime Environment (11.0.1+13) (build 11.0.1+13)
# Java VM: OpenJDK 64-Bit Server VM (11.0.1+13, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# C  [jna14555589958887135119.tmp+0x7604]
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /home/nick/Applications/Defold/core.17471)
#
# An error report file with more information is saved as:
# /home/nick/Applications/Defold/hs_err_pid17471.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
     17469:	symbol=_ZdlPv;  lookup in file=./Defold [0]
     17469:	symbol=_ZdlPv;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	symbol=_ZdlPv;  lookup in file=/lib/x86_64-linux-gnu/libm.so.6 [0]
     17469:	symbol=_ZdlPv;  lookup in file=/lib/x86_64-linux-gnu/libdl.so.2 [0]
     17469:	symbol=_ZdlPv;  lookup in file=/lib/x86_64-linux-gnu/libstdc++.so.6 [0]
     17469:	binding file ./Defold [0] to /lib/x86_64-linux-gnu/libstdc++.so.6 [0]: normal symbol `_ZdlPv' [GLIBCXX_3.4]
     17469:	symbol=pthread_mutex_destroy;  lookup in file=./Defold [0]
     17469:	symbol=pthread_mutex_destroy;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	binding file ./Defold [0] to /lib/x86_64-linux-gnu/libpthread.so.0 [0]: normal symbol `pthread_mutex_destroy' [GLIBC_2.2.5]
     17469:	symbol=pthread_mutex_lock;  lookup in file=./Defold [0]
     17469:	symbol=pthread_mutex_lock;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	binding file ./Defold [0] to /lib/x86_64-linux-gnu/libpthread.so.0 [0]: normal symbol `pthread_mutex_lock' [GLIBC_2.2.5]
     17469:	symbol=pthread_mutex_unlock;  lookup in file=./Defold [0]
     17469:	symbol=pthread_mutex_unlock;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	binding file ./Defold [0] to /lib/x86_64-linux-gnu/libpthread.so.0 [0]: normal symbol `pthread_mutex_unlock' [GLIBC_2.2.5]
     17469:	
     17469:	calling fini: ./Defold [0]
     17469:	
     17469:	
     17469:	calling fini: /lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	
     17469:	
     17469:	calling fini: /lib/x86_64-linux-gnu/libdl.so.2 [0]
     17469:	
     17469:	
     17469:	calling fini: /lib/x86_64-linux-gnu/libstdc++.so.6 [0]
     17469:	
     17469:	symbol=_ZNSt3_V214error_categoryD2Ev;  lookup in file=./Defold [0]
     17469:	symbol=_ZNSt3_V214error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	symbol=_ZNSt3_V214error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libm.so.6 [0]
     17469:	symbol=_ZNSt3_V214error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libdl.so.2 [0]
     17469:	symbol=_ZNSt3_V214error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libstdc++.so.6 [0]
     17469:	binding file /lib/x86_64-linux-gnu/libstdc++.so.6 [0] to /lib/x86_64-linux-gnu/libstdc++.so.6 [0]: normal symbol `_ZNSt3_V214error_categoryD2Ev' [GLIBCXX_3.4.21]
     17469:	symbol=_ZNSt14error_categoryD2Ev;  lookup in file=./Defold [0]
     17469:	symbol=_ZNSt14error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libpthread.so.0 [0]
     17469:	symbol=_ZNSt14error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libm.so.6 [0]
     17469:	symbol=_ZNSt14error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libdl.so.2 [0]
     17469:	symbol=_ZNSt14error_categoryD2Ev;  lookup in file=/lib/x86_64-linux-gnu/libstdc++.so.6 [0]
     17469:	binding file /lib/x86_64-linux-gnu/libstdc++.so.6 [0] to /lib/x86_64-linux-gnu/libstdc++.so.6 [0]: normal symbol `_ZNSt14error_categoryD2Ev' [GLIBCXX_3.4.15]
     17469:	
     17469:	calling fini: /lib/x86_64-linux-gnu/libm.so.6 [0]
     17469:	
     17469:	
     17469:	calling fini: /lib/x86_64-linux-gnu/libgcc_s.so.1 [0]
     17469:	

Yes, so it crashes when calling out to the external library to do texture compression. And it is maybe related to a difference in the version of libffi installed in Ubuntu 18 vs 20. We have only built and tested with Ubuntu 18.04.

I can confirm when temporarily removing the existing libffi.so.8 symlink and then creating a new libffi.so.8 symlink that points to libffi.so.6 for example, will fix the issue.

Of course this isn’t really a solution and actually will break your pc on reboot if you don’t reverse the symlink back to the original.

1 Like

Thanks for verifying!

I’m not really sure how Linux usually handles this?
Isn’t it supposed to be able to software compiled with Ubuntu 18?
Is there a support library that you can install to make it work?
This is how it usually works with Windows, that you need to install the infamous vc_redist.exe.

With the amazing help of thejustinwalsh i managed to find a temporary solution to the problem! I have added the solution to the github issue as a comment. https://github.com/defold/defold/issues/5342

3 Likes