gcv / julia-snail

An Emacs development environment for Julia
GNU General Public License v3.0
236 stars 23 forks source link

`julia-snail` fails for different reason #4

Closed jlapeyre closed 4 years ago

jlapeyre commented 4 years ago

I installed via use package. I got errors saying something like "can't find julia-snail in the elc file". Starting a new emacs did not help. Deleting the elc files and allowing them to be generated again did solve the issue.

gcv commented 4 years ago

Did you install emacs-libvterm in a separate step, or did it get automatically pulled in as a julia-snail dependency? I have seen a situation where the byte-compiler fails to compile julia-snail if the libvterm C code compilation is running at the same time. That's why I suggest installing emacs-libvterm in the installation instructions.

jlapeyre commented 4 years ago

I have melpa in package-archives. But, I do not see emacs-libvterm via list-packages. I do see vterm with the description "This package implements a terminal via libvterm". So I installed that explicitly. Maybe

  1. vterm is the wrong package

  2. I added vterm to a list of my packages in init.el which are installed on start up if not already installed. There is no notion of dependencies here. It just marches through the list. This is some handrolled (imagine that) code that I copied from somewhere. Maybe it was installed in the wrong order.

gcv commented 4 years ago

Emacs package naming is definitely confusing. Do I call it "emacs-libvterm" as the author does on the project's GitHub page (https://github.com/akermu/emacs-libvterm)? Or do I call it "vterm" to match the MELPA recipe (https://github.com/melpa/melpa/blob/master/recipes/vterm)?

In any case, "vterm" is the correct dependency package. Based on the behavior of the Emacs package manager, it needs to be fully installed, with the C shared library Emacs module dependency compiled, before installing julia-snail.

Could you please confirm the following:

If you delete the julia-snail package, but leave the vterm package alone (so it remains installed), and then reinstall julia-snail — does julia-snail then byte-compile and load correctly?

If it does, then I just need to clarify the installation instructions.

jlapeyre commented 4 years ago

Yes, I confirm that if vterm is fully installed before installing julia-snail, then julia-snail will be installed correctly and is immediately usable with no intervention.

I forgot that my method of installing packages from a list is not a proper package manager, even though it uses use-package.

gcv commented 4 years ago

Thanks! I updated the documentation to emphasize the importance of installing vterm first.