Re: 3.X CGI program fails after server move

new topic     » goto parent     » topic index » view thread      » older message » newer message
Bellthorpe said...

I've had a long-running CGI program at http://wazu.jp/hosting/pricing.exu

If you go there you will see the failure message. I raised it with the hosting provider, who recently moved the shared server that I'm on.

The provider's response:


-jailshell: /home/jwazuajp/public_html/cgi-bin/exu: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

This is the error generated. It's attempting to use 32bit ld-linux but this is a 64bit system.

/lib64/ld-linux-x86-64.so.2 looks like a possible library you could use, but you would need to check with your developer first.


I don't really know how to proceed. Any suggestions?

Either your provider migrated from a 32bit to a 64bit system, or else they moved from a 64bit system that was multiarch (had 32bit compatibility libraries) to one that was those stripped. Otherwise, I don't see how it could have worked on the old system - I'm the only person who ever had a 64bit exu, and I never released it (because it didn't work).

Since no version of Euphoria prior to 4.1.0 (still in beta) has ever supported 64bit, I see only five options:

1. Upgrade to 4.1.0 - but there might be some work since you are using a pre 4.0.0 version of Euphoria and 4.0.0 and later versions are not entirely backwards compatible. Still, it's mostly backwards compatible, so as long as you don't use namespaces it should not be too much work. This forum is running on 4.1.0 beta right now.

2. Attempt to install a 32bit chroot on the host yourself, and (as you likely will not have root permission necessary to do a conventional chroot) run exu inside of that via proot ( http://proot.me ). This will work if you can get away with it, but it's not super simple and you may have to install a lot of libraries (possibly hitting into a disk quota limit set by your provider).

3. Ask the provider (or the owners of the shared host) if they're willing to set up and install the multiarch 32bit compatibility libraries on the system for you. This is the best option, since it's zero work on your side, but I suspect that if they don't already have it, then its because they don't want to bother with this.

4. Change providers. Really, they shouldn't have dropped 32bit support without at least warning you about it first.

5. Hire Matt Lewis (the dev here who ported 4.1.0 to 64bit systems) to port the version of Euphoria you are currently using to 64bit as well. (No, I don't know what his rates are or what his schedule availability is.) Or possibly you could do it yourself, if you are skilled with C.

I apologize that the response is not more favorable.

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu