Erlang安装给出erlang-mode损坏错误

时间:2018-08-31 02:41:51

标签: erlang elixir distributed-computing distributed

我试图在Ubuntu 14.04上从elixir website安装Elixir。执行$ sudo apt-get install esl-erlang时出现以下错误。有人可以帮我吗?

$ sudo apt-get install esl-erlang
Reading package lists... Done
Building dependency tree       
Reading state information... Done
esl-erlang is already the newest version.
The following packages were automatically installed and are no longer required:
  libgconf2-4 python-requests-whl python-setuptools-whl python-six-whl
  python-urllib3-whl python-wheel
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 406 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up erlang-mode (1:21.0.5-1) ...
ERROR: erlang-mode is broken - called emacs-package-install as a new-style add-on, but has no compat file.
Install emacsen-common for emacs23
emacsen-common: Handling install of emacsen flavor emacs23
Wrote /etc/emacs23/site-start.d/00debian-vars.elc
Wrote /usr/share/emacs23/site-lisp/debian-startup.elc
Install emacsen-common for emacs24
emacsen-common: Handling install of emacsen flavor emacs24
Wrote /etc/emacs24/site-start.d/00debian-vars.elc
Wrote /usr/share/emacs24/site-lisp/debian-startup.elc
Install erlang-mode for emacs
Install erlang-mode for emacs23
install/erlang: Handling install for emacsen flavor emacs23
Wrote /usr/share/emacs23/site-lisp/erlang/erlang-edoc.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang-eunit.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang-flymake.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang-skels-old.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang-skels.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang-start.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang.elc
Wrote /usr/share/emacs23/site-lisp/erlang/erlang_appwiz.elc

In toplevel form:
erldoc.el:64:1:Error: Cannot open load file: cl-lib
Wrote /usr/share/emacs23/site-lisp/erlang/path.elc
ERROR: install script from erlang-mode package failed
dpkg: error processing package erlang-mode (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 erlang-mode
E: Sub-process /usr/bin/dpkg returned an error code (1)

谢谢

3 个答案:

答案 0 :(得分:2)

我不知道是什么引起了您的错误,但是您可以尝试将ASDFElixir plugin一起使用。这使您可以安装Elixir及其依赖项的多个版本,并使用带有shims的用户环境,而不是安装到系统目录。这样可以避免执行单个系统级安装所带来的许多依赖性和权限问题。

答案 1 :(得分:1)

看起来您同时安装了emacs23和emacs24。尝试为emacs23进行构建时发生故障。除非您出于某些原因真的想要emacs23,否则请将其删除,然后再正确安装:

sudo apt-get remove emacs23

可能您可能需要手动删除一些其他emacs23- *软件包。

答案 2 :(得分:0)

此问题仅影响erlang-mode软件包,该软件包增加了对在Emacs中编辑Erlang代码的支持。如果您未使用Emacs(或未在其中开发Erlang),则可以卸载该软件包:

sudo apt remove erlang-mode

Penguin Brian's answer中所述,在使用Emacs 23的系统上安装erlang-mode时会发生这种情况,因为erlang-mode仅支持Emacs 24或更高版本。 (看起来这是软件包中的错误:它不应该尝试为不受支持的Emacs版本进行编译。)如果您确实想在Emacs中使用erlang-mode,我建议运行Emacs 24并安装Erlang。 MELPA中的模式。