shen-cl icon indicating copy to clipboard operation
shen-cl copied to clipboard

shen-clisp fails to start on OSX when using the generated binary

Open tizoc opened this issue 7 years ago • 2 comments

It fails with this error: module 'syscalls' requires package OS.

But loading the generated shen.mem file works fine.

Something I noticed is that the generated shen binary's size is 7MB, while the lisp.run binary (that the 33KB clisp one seems to call) I have in my system is just 2.9MB in size.

After investigating a bit more, I found that the "OS" package is just an alias to the "POSIX" package. Also that when an image is saved, by default the packages listed in CUSTOM:*SYSTEM-PACKAGE-LIST* are saved with the image. I checked what that list looks like on my system and "POSIX" is in there:

("REGEXP" "POSIX" "I18N" "EXPORTING" "CS-COMMON-LISP" "SYSTEM" "COMMON-LISP" "EXT" "GRAY" "CHARSET" "CLOS" "SOCKET" "GSTREAM" "SCREEN")```

I haven't figured out what the problem is yet, what I have described is what I found so far.

tizoc avatar Jan 13 '18 03:01 tizoc

I've never seen this on Windows or Linux. I know on Windows, you have to make sure that 2 additional DLLs (libintl-8.dll, libreadline6.dll) are in your path for bin\clisp\shen.exe to work.

The size of bin/clisp/shen is about the same and twice the size of lisp.run on other platforms, too. I didn't think too much of it - who knows what it has to include to make a standalone executable.

Here's the CUSTOM:*SYSTEM-PACKAGE-LIST* from Ubuntu: ("READLINE" "REGEXP" "POSIX" "I18N" "EXPORTING" "CS-COMMON-LISP" "SYSTEM" "COMMON-LISP" "EXT" "GRAY" "CHARSET" "CLOS" "SOCKET" "GSTREAM" "FFI" "SCREEN").

rkoeninger avatar Jan 13 '18 06:01 rkoeninger

Haven't figured this one yet, but it seems it is related to stripping of binaries:

https://lists.gnu.org/archive/html/help-guix/2016-12/msg00098.html

tizoc avatar Oct 03 '19 17:10 tizoc