How to compile newLISP from source on 64-bit Ubuntu

Post #: 87
Post type: Blog post
Date: 2013-02-26 15:35:09.000
Author: Rocket Man

I've been wanting to update newLISP on my development box to see what neat new changes and features are available. Unfortunately, it's a 64-bit Ubuntu install, and pre-packaged binaries are only available for i386 (32-bit) on

So what to do? Well, compile from source of course!

First get the source:

cd ~
tar zxvf newlisp-10.4.5.tgz
cd newlisp-10.4.5

Now you're in the source code directory. First you need a few libraries, then you can go ahead and compile:

sudo apt-get install libffi-dev
sudo apt-get install libreadline6 libreadline6-dev
sudo make
sudo make install

And that's it! To get Rockets to work on Ubuntu, you'll have to go into the sqlite3.lsp module and add the appropriate path for where it lives on Ubuntu 64-bit:

cd /usr/share/newlisp/modules
sudo nano sqlite3.lsp

Add the following line under the list of similar lines:

"/usr/lib/x86_64-linux-gnu/" ; Ubuntu

Then do the same for crypto.lsp:

"/usr/lib/x86_64-linux-gnu/" ; Ubuntu

And you're good to go!

xerxes on 2013-02-27 06:27:17.000

Great idea to post this. I got the basics for 64 bit compilation from Lutz on the forum, but had to figure out that file locations were a problem, finally fixing them as you have outlined.

xerxes on 2013-02-27 06:44:22.000

testing a post after signing in ok

frednerx on 2013-02-27 06:45:21.000

Well, if he can test a post after signing in, why don't I?

frednerx on 2013-02-27 08:30:00.000

testing from a different setup ...

frednerx on 2013-02-27 08:31:51.000

and another setup ...

xerxes on 2013-03-04 13:18:20.000

After some trouble, my test site is up and running again, but posts and replies do not work. I get the following error:

"SQL logic error or missing database query problem"

which I did not encounter before.

Where should I start to fix this?

Rocket Man on 2013-03-04 20:07:54.000

That's an issue with the database file itself. Apache can read it but doesn't have permissions to write the file.

First, chmod 755 ROCKETS-DB.db (or whatever the database name is)

Then chown www-data:www-data ROCKETS-DB.db

Now, here's the weird thing. You ALSO have to chown the directory that the database is in, to make the database itself writeable by the Apache process.

So you chown www-data:www-data /var/www as well.

xerxes on 2013-03-05 01:14:05.000

Excellent. Will try those steps. How am I ever going to learn all this A Patchy Server config stuff ... ?

xerxes on 2013-03-05 06:26:55.000

Those three steps did the trick. I haven't yet checked in detail, but there are no longer errors, and post/replies appear ok. Great!

xerxes on 2013-08-20 13:40:03.000

Ubuntu did a rare belly up on me the other day: I was running Raring, and the Unity went totally moggy. Reinstalling worked (on 3rd attempt - there were further screen handling problems) and nothing was lost, and everything worked better and better after a couple of updates.

However, I decided to try Crunchbang Linux, which uses OpenBox (tired of slow GUI stuff), and also because it is Debian, rather than Ubuntu based. It's on a SSD, and everything hums along beautifully. More to the point, though, I'd like to thank you for this post about getting newLISP from source. Fantastic. What a doddle. Now I just have to create a menu item for it. As it turns out, OpenBox makes it pretty easy to create menu items, but I'll leave that for tomorrow.

Thanks again.

xerxes on 2014-08-20 06:56:26.000

Hope all is well.

For anyone's information:

I had a problem with building newLISP 10.6.0 from source (on Ubuntu 14.04), but found a post from author Lutz, saying these two lines should be inserted into newlisp.c and/or newlisp.c.

typedef char *CPFunction ();
typedef char **CPPFunction ();

I inserted in both. It fixed the problem - "sudo make" and "sudo make install" proceeded perfectly.

Rocket Man on 2014-09-02 14:52:54.000

Thanks Xerxes, that's helpful information!

Things are going really well. I've been busy at work, but I've been using Rockets to develop some pretty spiffy in-house tools, so it's been good times!

xerxes on 2020-01-20 18:29:15.000

Hi Rocket Man

Something has changed in the meantimve - this tripped up on libreadline6, after which "sudo make" didn't complete:
Package libreadline6 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'libreadline6' has no installation candidate

View this post in the forums

Views: 10991