1. segfault running eui on remote server
- Posted by toxicbreakfast Nov 22, 2021
- 744 views
Hi, haven't posted here in 18 years, and that was under another name. But for those 18 years I've been running Euphoria (up to v3.1) to power scripts on my website on a shared hosting platform. Then last week, following "system maintenance", Euphoria stopped working. I quickly established that the host would no longer run 32 bit binaries so downloaded the latest 64 bit package and accepted I'd have to change some of the code for version 4.x (which I've been running at home). I uploaded the eui interpreter to start with. But it won't run.
Just typing "./eui" with no arguments at the command line causes a "Segmentation fault" message and an immediate exit.
I don't have the access to do a proper install on the remote host but thought I should just be able to copy the interpreter over and any necessary libraries. The same binary runs fine on a machine at home without a full Euphoria install. Both the home machine and the remote one report "x86_64" when I run arch.
I know it's not a lot to go on but has anyone any idea how to move forward? Webhosts are little help ("use Perl instead").
chris.
2. Re: segfault running eui on remote server
- Posted by ghaberek (admin) Nov 22, 2021
- 754 views
Hi, haven't posted here in 18 years, and that was under another name. But for those 18 years I've been running Euphoria (up to v3.1) to power scripts on my website on a shared hosting platform. Then last week, following "system maintenance", Euphoria stopped working. I quickly established that the host would no longer run 32 bit binaries so downloaded the latest 64 bit package and accepted I'd have to change some of the code for version 4.x (which I've been running at home). I uploaded the eui interpreter to start with. But it won't run.
Just typing "./eui" with no arguments at the command line causes a "Segmentation fault" message and an immediate exit.
I don't have the access to do a proper install on the remote host but thought I should just be able to copy the interpreter over and any necessary libraries. The same binary runs fine on a machine at home without a full Euphoria install. Both the home machine and the remote one report "x86_64" when I run arch.
I know it's not a lot to go on but has anyone any idea how to move forward? Webhosts are little help ("use Perl instead").
chris.
Welcome back!
Do you know which distro this shared host is running?
If you can run commands on the system, what output do you get for these commands?
- cat /etc/*-release
- uname -a
- ldd --version
- ldd eui
On a Debian 10 (Buster) system, I get the following:
$ cat /etc/*-release PRETTY_NAME="Debian GNU/Linux 10 (buster)" NAME="Debian GNU/Linux" VERSION_ID="10" VERSION="10 (buster)" VERSION_CODENAME=buster ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/" $ uname -a Linux e2fc44991087 5.4.119-1-pve #1 SMP PVE 5.4.119-1 (Tue, 01 Jun 2021 15:32:00 +0200) x86_64 GNU/Linux $ ldd --version ldd (Debian GLIBC 2.28-10) 2.28 $ ldd eui linux-vdso.so.1 (0x00007ffd36b2e000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fccb7a05000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fccb7a00000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fccb79df000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fccb781e000) /lib64/ld-linux-x86-64.so.2 (0x00007fccb7b8d000)
My thought is that either the GLIBC version is too old or a shared library is missing (which would say "not found" in the output of ldd eui).
-Greg
3. Re: segfault running eui on remote server
- Posted by toxicbreakfast Nov 22, 2021
- 736 views
Hi, thanks for helping! I get:
-bash-4.1$ cat /etc/*-release CentOS release 6.10 (Final) CentOS release 6.10 (Final) CentOS release 6.10 (Final) -bash-4.1$ uname -a Linux sharedssh0.extendcp.co.uk 2.6.32-754.28.1.el6.x86_64 #1 SMP Wed Mar 11 18:38:45 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux -bash-4.1$ ldd --version ldd (GNU libc) 2.12 Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Roland McGrath and Ulrich Drepper. -bash-4.1$ ldd eui statically linked
4. Re: segfault running eui on remote server
- Posted by ghaberek (admin) Nov 22, 2021
- 756 views
Hi, thanks for helping! I get:
-bash-4.1$ cat /etc/*-release CentOS release 6.10 (Final) CentOS release 6.10 (Final) CentOS release 6.10 (Final) -bash-4.1$ uname -a Linux sharedssh0.extendcp.co.uk 2.6.32-754.28.1.el6.x86_64 #1 SMP Wed Mar 11 18:38:45 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux -bash-4.1$ ldd --version ldd (GNU libc) 2.12 Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Roland McGrath and Ulrich Drepper. -bash-4.1$ ldd eui statically linked
Wow. As I suspected this system has GLIBC version 2.12 and Euphoria 4.1 requires GLIBC 2.15 or later.
$ eui -v Euphoria Interpreter v4.1.0 development 64-bit Linux, Using System Memory Revision Date: 2015-02-02 14:18:53, Id: 5861:57179171dbed $ objdump -T $(which eui) | grep -oP 'GLIBC_[\d\.]+' | sort -uV | tail -n1 GLIBC_2.15
CentOS 6 has been completely EOL for over a year now (last maintenance updates were November 2020).
Your hosting provider should move you to server that is receiving patches and updates and if they do not, you should find another provider altogether. It's dangerous to run on such an outdated and unpatched system.
If you're looking to switch, I recommend Hyper Expert (that's my affiliate link). I know their shared hosting supports Euphoria 4.1 as I'm running the RapidEuphoria website there.
-Greg
5. Re: segfault running eui on remote server
- Posted by toxicbreakfast Nov 22, 2021
- 726 views
Maybe it will come to a hosting switch. But I see what you are saying about GLIBC and I think to myself, "could any of the earlier 4.x versions be compatible?" And it turns out that yes v4.04 only needs GLIBC 2.4! So I upload the 64-bit eui from that package and...
Segmentation fault
so GLIBC isn't the problem here.
6. Re: segfault running eui on remote server
- Posted by toxicbreakfast Nov 22, 2021
- 713 views
Ha Ha, no I'm a dumbass! It does work, I was making the stupid error of assuming Filezilla's auto mode was uploading it in binary, when it wasn't. Thanks for pointing me in the direction of GLIBC compatibility though, that's got it!