Page 1 of 1

Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Mon Jun 07, 2021 8:37 pm
by sphere
Hi,

after struggling for days again with the conf files, drove me back to the lesson again on how to install on Apache.
https://lessons.livecode.com/m/4070/l/3 ... ith-apache
Do NOT follow the lesson if you run Ubuntu Linux server.
The only correct set-up is in the comments below by Russell Martin.
And easy to forget if there are no (correct) setup notes anymore with the download.
To say is that it could work via the original setup following the lesson, but to save your precious time, don't.(had it running also that way before on a VPS, but playing with a Raspberry is more fun)

So now I'm convinced that the setup is working correct because now I get this error:

Code: Select all

Exec format error: exec of '/usr/lib/cgi-bin/livecode-community-server' failed: /usr/lib/cgi-bin/livecode-community-server
Which says actually that it is the wrong architecture. The Linux 64bit download is based x86 and not ARM.
It's an error I did not have before, so at least it's trying to run the hello.lc script.

I was planning and hoping to use LC partly for this, but I guess it's a no go. Wish I had been awake earlier and figured it could not work...

There are other solutions of course, but this would have saved me a lot of time for the web part.

Will the server ever be ported to ARM?

Thanks!

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Mon Jun 07, 2021 8:41 pm
by FourthWorld
ARM is increasingly popular in data centers, so an LC Server build for ARM seems an inevitability, sooner or later.

In the meantime, you can run a standalone as a CGI, which will give you everything you enjoy about the LC language except for Server's PHP-style implicit merge (which can be worked around easily enough in most cases using an explicit call to the merge function).

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Mon Jun 07, 2021 9:04 pm
by sphere
You mean the HTML5 standalone actually? That's a no-go for me. Impractical.

So I really hope an ARM server version is coming soon, fingers crossed.

So for now I will stick with PHP and Javascript then.

Thanks!

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Mon Jun 07, 2021 9:27 pm
by FourthWorld
sphere wrote:
Mon Jun 07, 2021 9:04 pm
You mean the HTML5 standalone actually?
LC's HTML export is for client-side browsers only. We're talking about the opposite end of that connection, on the server.

When I wrote "standalone" I meant exactly that, a standalone executable created as any other, using the Linux ARM engine rather than Linux x86.

Nearly any app that uses stdin/stdout can be used as a CGI. Any desktop LC standalone can be launched without GUI dependencies by adding a -ui flag, making them sell suited for faceless applications that use only stdin and stdout as the interface, such as CGIs running under Apache.

The majority of my server deployments have used standalones as CGI engines for decades. I've only recently begun use LC Server for anything beyond testing to help others, and only because it offers a few minor advantages for server work over standalones.

But since an RPi is already I/O-inhibited, any minor performance differences with parsing POST data and other such tasks in script (as one does in Perl, Python, or pretty much anything that isn't PHP or LC Server) is far from significant enough to worry about.

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Tue Jun 08, 2021 7:28 pm
by sphere
Don't know if I follow correctly.
You mean that an ui less executable will run as CGI?
So actually created as standalone on a Raspberry using 7.04 ? or on an x86 server?

Can you explain a bit more on how you do that?
Thanks.

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Tue Jun 08, 2021 7:57 pm
by FourthWorld
sphere wrote:
Tue Jun 08, 2021 7:28 pm
You mean that an ui less executable will run as CGI?
A CGI is any program that Apache is set up to launch; it reads input from Apache in stdin, outputs its results back to Apache on stdout, and then Apache returns that over the wire to the client.

Running the app with the -ui flag bypasses graphics init, which makes it launch much faster and is more appropriate for server environments, which generally have no GUI.
So actually created as standalone on a Raspberry using 7.04 ? or on an x86 server?
If your server is x86, build for x86. If your server is a Raspberry Pi, build for ARM.

I find the LC IDE finicky on Raspberry Pi, so I prefer to work with it as we do mobile, building on my main machine and copying the executable to my RPi.

It gets cumbersome pretty quickly to build a standalone for every script change, so the standalone I use has a startup handler that looks for a library stack of a given name, and if found starts using it. The meat of the program is in the library stack.

LC Server automates parsing incoming POST data, so any CGI made from a standalone will need to handle that. There are scripts here in older posts in the forum (from back when everyone did their server work with standalones, since LC Server hadn't been invented), and if you need that and don't turn one I can dig up mine.

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Tue Jun 08, 2021 8:12 pm
by sphere
Thanks for explaining.
I will think this over and see if I can use this way of working.

Re: Server not working on Linux Ubuntu 20-04 64bits on Raspberry4 due to ARM

Posted: Wed Jun 09, 2021 2:01 am
by PaulDaMacMan
Following

Suddenly very interested in Rasberry Pi since a co-worker gave me his unused Pi 3B+ to play around with... thinking of ways to use it as a LiveCode scripted (headless) appliance.