fredokun / cl-jupyter

An enhanced interactive Shell for Common Lisp (based on the Jupyter protocol)
BSD 2-Clause "Simplified" License
199 stars 29 forks source link

Package ASDF does not exist. #43

Closed freifrauvonbleifrei closed 5 years ago

freifrauvonbleifrei commented 5 years ago

Hi,

I wanted to try cl-jupyter the quick and dirty way (just starting to learn about lisp), and what I got was:

[I 16:12:43.298 NotebookApp] KernelRestarter: restarting kernel (2/5), new random ports
This is SBCL 1.4.5.debian, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
Unhandled SB-C::INPUT-ERROR-IN-LOAD in thread #<SB-THREAD:THREAD "main thread" RUNNING
                                                 {10005E85B3}>:
  READ error during LOAD:

    Package ASDF does not exist.

      Line: 3, Column: 29, File-Position: 150

      Stream: #<SB-INT:FORM-TRACKING-STREAM for "file /home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp" {1001B73963}>

Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {10005E85B3}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SB-C::INPUT-ERROR-IN-LOAD {1001B75F83}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK *INVOKE-DEBUGGER-HOOK* #<SB-C::INPUT-ERROR-IN-LOAD {1001B75F83}>)
2: (INVOKE-DEBUGGER #<SB-C::INPUT-ERROR-IN-LOAD {1001B75F83}>)
3: (ERROR #<SB-C::INPUT-ERROR-IN-LOAD {1001B75F83}>)
4: (SB-C:COMPILER-ERROR SB-C::INPUT-ERROR-IN-LOAD :CONDITION #<SB-INT:SIMPLE-READER-PACKAGE-ERROR "Package ~A does not exist." {1001B75F23}> :STREAM #<SB-INT:FORM-TRACKING-STREAM for "file /home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp" {1001B73963}>)
5: (SB-C::%DO-FORMS-FROM-INFO #<CLOSURE (LAMBDA (SB-KERNEL:FORM &KEY :CURRENT-INDEX &ALLOW-OTHER-KEYS) :IN SB-INT:LOAD-AS-SOURCE) {1001B75A6B}> #<SB-C::SOURCE-INFO {1001B75A23}> SB-C::INPUT-ERROR-IN-LOAD)
6: (SB-INT:LOAD-AS-SOURCE #<SB-INT:FORM-TRACKING-STREAM for "file /home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp" {1001B73963}> :VERBOSE NIL :PRINT NIL :CONTEXT "loading")
7: ((FLET SB-FASL::THUNK :IN LOAD))
8: (SB-FASL::CALL-WITH-LOAD-BINDINGS #<CLOSURE (FLET SB-FASL::THUNK :IN LOAD) {7FFFF63E77DB}> #<SB-INT:FORM-TRACKING-STREAM for "file /home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp" {1001B73963}>)
9: ((FLET SB-FASL::LOAD-STREAM :IN LOAD) #<SB-INT:FORM-TRACKING-STREAM for "file /home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp" {1001B73963}> NIL)
10: (LOAD #P"/home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp" :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST T :EXTERNAL-FORMAT :DEFAULT)
11: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:LOAD . "/home/pollinta/Downloads/cl-jupyter-master/cl-jupyter.lisp") (:QUIT)))
12: (SB-IMPL::TOPLEVEL-INIT)
13: ((FLET SB-UNIX::BODY :IN SAVE-LISP-AND-DIE))
14: ((FLET "WITHOUT-INTERRUPTS-BODY-36" :IN SAVE-LISP-AND-DIE))
15: ((LABELS SB-IMPL::RESTART-LISP :IN SAVE-LISP-AND-DIE))

unhandled condition in --disable-debugger mode, quitting

I have a clean SBCL installation on Ubuntu 18.04, and quite possibly I just need to know how to get asdf permanently - nothing had changed after running (require 'asdf) in sbcl.

PuercoPop commented 5 years ago

@freifrauvonbleifrei SBCL bundles ASDF, so it is really weird to not have one? Quicklisp also bundles ASDF, have you installed it already?

freifrauvonbleifrei commented 5 years ago

@PuercoPop hrm, no, apt list --installed | grep asdf did not give me anything. I tried installing cl-asdf, and reinstalling sbcl, to no avail.

PuercoPop commented 5 years ago

@freifrauvonbleifrei It is not a good idea to use the distribution packages for Lisp libraries. Uninstall CL-ASDF. SBCL bundles ASDF as part of their main repository. I recommend using the SBCL you got from apt to compile your own sources:

$ sh make.sh --prefix=/usr/local --fancy
And follow the instructions and then
$ apt-get remove sbcl

But installing quicklisp should provide you with an (albeit old) ASDF version regardless.

DylanMeeus commented 5 years ago

I face a similar problem - running Debian and having quicklisp installed though. (I got SBCL from apt-get install on Jessie)

mrmechko commented 5 years ago

I got a similar problem. I installed sbcl from source, as per a suggestion above. I still get the Package ASDF does not exist error. sbcl --eval "(require 'asdf)" --quit works just fine though.

UPDATE: I figured out my problem. I don't have a .sbclrc so sbcl doesn't automatically (require 'asdf) or (load "~/quicklisp/setup.lisp"). I suspect this might solve some people's problems.

fredokun commented 5 years ago

cl-jupyter kind of depend on quicklisp so the setup.lisp script should be loaded implicitly or explicitely ... Closing this (happy that you find a solution)

phewdry commented 4 years ago

I got a similar problem. I installed sbcl from source, as per a suggestion above. I still get the Package ASDF does not exist error. sbcl --eval "(require 'asdf)" --quit works just fine though.

UPDATE: I figured out my problem. I don't have a .sbclrc so sbcl doesn't automatically (require 'asdf) or (load "~/quicklisp/setup.lisp"). I suspect this might solve some people's problems. @

phewdry commented 4 years ago

can you post your .sbclrc file? how to load with cl-jupyter??

@mrmechko

mrmechko commented 4 years ago

can you post your .sbclrc file? how to load with cl-jupyter??

@mrmechko

Its been a while since Ive used it since I switched to emacs and just started using SLIME. If you want, check out https://github.com/tripslab/vagrant-trips. The whole thing is unnecessary for you, but the way the virtual machine gets set up, cl-jupyter ran on it. Sorry i can't be more help, but I got a thesis to finish :3

EDIT: my sblrc file apparently just had the following in it

(require 'asdf)
(load "~/quicklisp/setup.lisp")

This file has the way I installed all the lisp specific packages, including cl-jupyter. Hope this helps!

https://github.com/tripslab/vagrant-trips/blob/57d4233f8d0457a58601786d0ea7d2ca78ae436b/provisioners/trips/sbcl.sh