Hi,
ecl 16.1.2 on Linux cuts symlink filename to 128 chars/bytes. It works with ordinary files. Examples bellow. It doesn't error with "Too long filename" as in si_coerce_to_filename but silently cuts the name and then fails with another error.
Tomas
---
$ nix-shell -p ecl --run 'ecl -q -eval "(print (length "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp"))" -eval "(quit)"' ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas" 133
$ nix-shell -p ecl --run 'ecl -q -eval "(print (probe-file "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp"))" -eval "(quit)"' ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas" #P"/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp"
$ nix-shell -p ecl --run 'ecl -q -eval "(print (length "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp"))" -eval "(quit)"' ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas" 136
$ nix-shell -p ecl --run 'ecl -q -eval "(print (probe-file "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp"))" -eval "(quit)"' ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/asdf.fas" An error occurred during initialization: Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector". Either 1) the file does not exist, or 2) we are not allowed to access the file, or 3) the pathname points to a broken symbolic link..
--- with gcc
(progn (load "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.1357"))
ECL (Embeddable Common-Lisp) 16.1.2 (git:UNKNOWN) Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya Copyright (C) 1993 Giuseppe Attardi Copyright (C) 2000 Juan J. Garcia-Ripoll Copyright (C) 2015 Daniel Kochmanski ECL is free software, and you are welcome to redistribute it under certain conditions; see file 'Copyright' for details. Type :h for Help. Top level in: #<process TOP-LEVEL>.
;;; Loading "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/packages.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/backend.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/ecl.fasc" ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/sockets.fas" ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/profile.fas" ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/serve-event.fas" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/gray.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/match.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/rpc.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/swank.fasc" ;;; Compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp;; ;; Error compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp: ;; Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector". ;; Either ;; 1) the file does not exist, or ;; 2) we are not allowed to access the file, or ;; 3) the pathname points to a broken symbolic link. ;;
Condition of type: FILE-ERROR Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector". Either 1) the file does not exist, or 2) we are not allowed to access the file, or 3) the pathname points to a broken symbolic link.
Available restarts:
1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.
Broken at SWANK-LOADER::COMPILE-FILES. In: #<process TOP-LEVEL>. File: #P"/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" (Position #6362)
:b
Backtrace:
SWANK-LOADER::COMPILE-FILES swank-loader::compile-contribs swank::run-hook swank::init swank-loader::setup swank-loader:init si:bytecodes [Evaluation of: (funcall (read-from-string "swank-loader:init"))] si:bytecodes [Evaluation of: (si:top-level t)]
--- with bytecode compiler
(progn (load "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.1357"))
ECL (Embeddable Common-Lisp) 16.1.2 (git:UNKNOWN) Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya Copyright (C) 1993 Giuseppe Attardi Copyright (C) 2000 Juan J. Garcia-Ripoll Copyright (C) 2015 Daniel Kochmanski ECL is free software, and you are welcome to redistribute it under certain conditions; see file 'Copyright' for details. Type :h for Help. Top level in: #<process TOP-LEVEL>.
;;; Loading "/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/packages.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/backend.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/ecl.fasc" ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/sockets.fas" ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/profile.fas" ;;; Loading #P"/nix/store/wckaf9qh18iw93gimjxj915msvaskwgg-ecl-16.1.2/lib/ecl-16.1.2/serve-event.fas" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/gray.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/match.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/rpc.fasc" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/swank.fasc" ;;; Compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp;; ;; Error compiling /nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector.lisp: ;; Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector". ;; Either ;; 1) the file does not exist, or ;; 2) we are not allowed to access the file, or ;; 3) the pathname points to a broken symbolic link. ;;
Condition of type: FILE-ERROR Filesystem error with pathname "/nix/store/zgrivrhpcrq54hay1hyib80fac9syi7p-emacs-slime-2.18/share/emacs/site-lisp/elpa/slime-2.18/contrib/swank-fancy-inspector". Either 1) the file does not exist, or 2) we are not allowed to access the file, or 3) the pathname points to a broken symbolic link.
Available restarts:
1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.
Broken at SWANK-LOADER::COMPILE-FILES. In: #<process TOP-LEVEL>. File: #P"/nix/store/rx4lnbvmv7hymadkzyv3ncvmf4sh5a3f-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" (Position #6362)
:b
Backtrace:
SWANK-LOADER::COMPILE-FILES swank-loader::compile-contribs swank::run-hook swank::init swank-loader::setup swank-loader:init si:bytecodes [Evaluation of: (funcall (read-from-string "swank-loader:init"))] si:bytecodes [Evaluation of: (si:top-level t)]
Hello Tomas,
Thank you for the report (and sorry for delayed response). I've added this issue to the tracker, you may monitor it here:
https://gitlab.com/embeddable-common-lisp/ecl/issues/295
Best regards, Daniel
Hello,
could you verify, if the fix works for you? https://gitlab.com/embeddable-common-lisp/ecl/issues/295 (commit 44178bd0, develop branch).
Best regards, Daniel
Hi Daniel,
Daniel Kochmański daniel@turtleware.eu writes:
could you verify, if the fix works for you? https://gitlab.com/embeddable-common-lisp/ecl/issues/295 (commit 44178bd0, develop branch).
commit 44178bd0 fixes the problem with long paths.
With bytecode compiler "ecl -norc -eval '(ext:install-bytecodes-compiler)'" I now get slime repl.
With gcc "ecl -norc -eval '(ext:install-c-compiler)'", I get a different error now, see below.
Thank you!
Tomas
---
(progn (load "/nix/store/qf8x881906ccvk2iyr7xd6p211nfnwam-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.1719"))
;;; Loading #P"/nix/store/z84klgic00pwj4a7b18sdw38f3xphp98-ecl-16.1.2/lib/ecl-16.1.2/cmp.fas" ECL (Embeddable Common-Lisp) 16.1.2 (git:UNKNOWN) Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya Copyright (C) 1993 Giuseppe Attardi Copyright (C) 2000 Juan J. Garcia-Ripoll Copyright (C) 2015 Daniel Kochmanski ECL is free software, and you are welcome to redistribute it under certain conditions; see file 'Copyright' for details. Type :h for Help. Top level in: #<process TOP-LEVEL>.
;;; Loading "/nix/store/qf8x881906ccvk2iyr7xd6p211nfnwam-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/packages.fas" ;;; Loading "/home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/backend.fas" ;; ;; Error loading /home/tomas/.slime/fasl/2016-04-19/ecl-16.1.2-linux-x86_64/backend.fas: ;; In form ;; (PROGN ;; (LOAD ;; "/nix/store/qf8x881906ccvk2iyr7xd6p211nfnwam-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" ;; :VERBOSE ;; T) ;; (FUNCALL (READ-FROM-STRING "swank-loader:init")) ;; (FUNCALL (READ-FROM-STRING "swank:start-server") "/tmp/slime.1719")) ;; Wrong number of arguments passed to function EXT:EXTERNAL-PROCESS-WAIT. ;;
Condition of type: SIMPLE-PROGRAM-ERROR In form (PROGN (LOAD "/nix/store/qf8x881906ccvk2iyr7xd6p211nfnwam-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" :VERBOSE T) (FUNCALL (READ-FROM-STRING "swank-loader:init")) (FUNCALL (READ-FROM-STRING "swank:start-server") "/tmp/slime.1719")) Wrong number of arguments passed to function EXT:EXTERNAL-PROCESS-WAIT. Available restarts:
1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.
Broken at SWANK-LOADER::COMPILE-FILES. In: #<process TOP-LEVEL>. File: #P"/nix/store/qf8x881906ccvk2iyr7xd6p211nfnwam-emacs-packages-deps/share/emacs/site-lisp/elpa/slime-2.18/swank-loader.lisp" (Position #6362)
Hi Daniel,
Tomas Hlavaty tom@logand.com writes:
With gcc "ecl -norc -eval '(ext:install-c-compiler)'", I get a different error now, see below.
I cleared .slime cache as you suggested and it works now.
Thank you,
Tomas