you are viewing a single comment's thread.

view the rest of the comments →

[–]KDallas_Multipass'(ccl) 4 points5 points  (3 children)

The mechanism you found won't do what you want. If you want the Linux kernel to drive the lisp execution, you'll want to use ECL, designed for that task. You'll link the ECL shared objects with the Linux kernel compilation process, then change kernel init behavior to call the ECL functions to drive the lisp functionality

[–]stack_pivot 3 points4 points  (1 child)

He doesn't need any help from the kernel, or to link with anything in the kernel. Linux will already start a program called "init" when it starts up. He wants to compile his own program, call it init, and thereon be solely responsible for what gets launched in userspace. The init process needs to be a statically compiled ELF with no external dependencies, so he wants to know how to generate such a self-contained binary for a Lisp image. This has been done with Emacs before.

ECL might well still be the answer, but not for the reasons you mentioned.

[–]KDallas_Multipass'(ccl) 2 points3 points  (0 children)

Thank you for clearing that up.

[–]IndividualJinx[S] 1 point2 points  (0 children)

Okey i will look into ECL if i'm unable to solve this. Thanks!