lem icon indicating copy to clipboard operation
lem copied to clipboard

Compliling Lem on Arm - Librem 5 phone.

Open aykaramba opened this issue 1 year ago • 3 comments

Hi.

I am trying to compile Lem on my Librem 5 phone that runs Debian 11. Quicklisp errors out with "lem-mailbox" not found. I don't understand this error, I do know there is some code in Lem that refers to it, but I don't understand why it is not being found.

Details:

// kernel - librem 5 mobile phone - running debian

  • purism@myphone:~/common-lisp/lem/scripts$ uname -a Linux myphone 6.4.0-1-librem5 #1 SMP PREEMPT Mon Oct 30 19:48:50 UTC 2023 aarch64 GNU/Linux

  • purism@myphone:~/common-lisp/lem/scripts$ cat /etc/debian_version 11.7

// sbcl - quickload lem-sdl2

  • (ql:quickload :lem-sdl2) To load "lem-sdl2": Load 1 ASDF system: lem-sdl2 ; Loading "lem-sdl2" ..... debugger invoked on a QUICKLISP-CLIENT:SYSTEM-NOT-FOUND in thread #<THREAD "main thread" RUNNING {1005C26673}>: System "lem-mailbox" not found

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name): 0: [CONTINUE ] Try again 1: [ABORT ] Give up on "lem-mailbox" 2: Give up on "lem-sdl2" 3: [REGISTER-LOCAL-PROJECTS] Register local projects and try again. 4: Exit debugger, returning to top level.

((LABELS QUICKLISP-CLIENT::RECURSE :IN QUICKLISP-CLIENT::COMPUTE-LOAD-STRATEGY) "lem-mailbox") source: (CERROR "Try again" 'SYSTEM-NOT-FOUND :NAME NAME) 0]

// sbcl - quickload lem-ncurses

  • (ql:quickload :lem-ncurses) To load "lem-ncurses": Load 1 ASDF system: lem-ncurses ; Loading "lem-ncurses"

debugger invoked on a QUICKLISP-CLIENT:SYSTEM-NOT-FOUND in thread #<THREAD "main thread" RUNNING {1005C26673}>: System "lem-mailbox" not found

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name): 0: [CONTINUE ] Try again 1: [ABORT ] Give up on "lem-mailbox" 2: Give up on "lem-ncurses" 3: [REGISTER-LOCAL-PROJECTS] Register local projects and try again. 4: Exit debugger, returning to top level.

((LABELS QUICKLISP-CLIENT::RECURSE :IN QUICKLISP-CLIENT::COMPUTE-LOAD-STRATEGY) "lem-mailbox") source: (CERROR "Try again" 'SYSTEM-NOT-FOUND :NAME NAME) 0]

Any suggestions on how to resolve this issue and move forward with the quickload process?

Thanks.

aykaramba avatar Dec 06 '23 03:12 aykaramba

Hi, you can try:

cd ~/common-lisp git clone https://github.com/lem-project/lem-mailbox.git

Then (in sbcl): (ql:quickload :lem-mailbox)

rpx99 avatar Dec 06 '23 08:12 rpx99

https://lem-project.github.io/installation/ncurses/linux/#install-qlot Library dependencies are resolved using qlot, and we recommend using that method.

cxxxr avatar Dec 06 '23 11:12 cxxxr

If you are running Debian, you can also try the automatic installer (which will install the system dependencies + qlot) https://lem-project.github.io/installation/ncurses/linux/#debianmintubuntu

Sasanidas avatar Dec 06 '23 13:12 Sasanidas

Just dropping in to give everyone an update and perhaps help other noobs trying to install Lem on the Librem 5:

  1. I wanted to install / compile all the components and Lem using Quicklisp. I think the issue was with the version of libffi and I could not figure out how to fix that manually.

  2. As per everyones suggestion here, using Qlot to build the ncurses and sdl2 versions of Lem works! Summary:

** Install qlot Automatic installer: curl -L https://qlot.tech/installer | bash

** Download and build the executable Create the directories:

mkdir $HOME/common-lisp && cd $HOME/common-lisp git clone https://github.com/lem-project/lem.git cd lem && make ncurses

**To build the sdl2 version: make sdl2

Instructions as others poted: https://lem-project.github.io/installation/ncurses/linux/#debianmintubuntu

SUMMARY: Lem continues its conquest of platforms, now running on the Librem 5!

Thanks everyone for the amazing editor and the deep levels of help to resolve this issue. I will now learn how to use Qlot, that is amazing as well.

aykaramba avatar Jul 18 '24 17:07 aykaramba