(elpy-enable) 失败 "Symbol's function definition is void: format-message"

(elpy-enable) fails with "Symbol's function definition is void: format-message"

我正在尝试试用 elpy 并在我的 ~/.emacs.d/init.el 中包含以下几行:

(add-to-list 'package-archives '("elpy" . "http://jorgenschaefer.github.io/packages/"))
(package-initialize)

(defvar my-packages
  '(elpy))
(dolist (p my-packages)
  (when (not (package-installed-p p))
    (package-install p)))

(elpy-enable)

启动时我收到消息"Symbol's function definition is void: format-message."有其他人运行遇到这个问题吗?

这最终成为我的设置问题。我也安装了 python.el,这导致了以下调试器跟踪:

Debugger entered--Lisp error: (void-function format-message)
  (format-message "Add `%s' clause? " name)
  (let* ((name (symbol-name name)) (function-name (intern (concat "python-skeleton--" name))) (msg (format-message "Add `%s' clause? " name))) (if (not skel) (progn (setq skel (cons (quote <) (cons (format "%s:" name) (quote (n n > _ n))))))) (cons (quote define-skeleton) (cons function-name (cons (or doc (format "Auxiliary skeleton for %s statement." name)) (cons nil (cons (cons (quote unless) (cons ... ...)) skel))))))
  (closure (python-shell--interpreter-args python-shell--interpreter outline-heading-end-regexp view-return-to-alist t) (name doc &optional &rest skel) "Define a `python-mode' auxiliary skeleton using NAME DOC and SKEL.\nThe skeleton will be bound to python-skeleton-NAME." (let* ((name (symbol-name name)) (function-name (intern (concat "python-skeleton--" name))) (msg (format-message "Add `%s' clause? " name))) (if (not skel) (progn (setq skel (cons (quote <) (cons (format "%s:" name) (quote ...)))))) (cons (quote define-skeleton) (cons function-name (cons (or doc (format "Auxiliary skeleton for %s statement." name)) (cons nil (cons (cons ... ...) skel)))))))(else nil)
  (python-define-auxiliary-skeleton else nil)
  eval-buffer(#<buffer  *load*-95724> nil "/Users/lakshmansankar/.emacs.d/elpa/python-0.25.1/python.el" nil t)  ; Reading at buffer position 170847
  load-with-code-conversion("/Users/lakshmansankar/.emacs.d/elpa/python-0.25.1/python.el" "/Users/lakshmansankar/.emacs.d/elpa/python-0.25.1/python.el" nil t)
  require(python)
  eval-buffer(#<buffer  *load*-866782> nil "/Users/lakshmansankar/.emacs.d/elpa/elpy-20160131.118/elpy.el" nil t)  ; Reading at buffer position 1541
  load-with-code-conversion("/Users/lakshmansankar/.emacs.d/elpa/elpy-20160131.118/elpy.el" "/Users/lakshmansankar/.emacs.d/elpa/elpy-20160131.118/elpy.el" nil t)
  (elpy-enable)
  eval-buffer(#<buffer  *load*> nil "/Users/lakshmansankar/.emacs.d/init.el" nil t)  ; Reading at buffer position 6634
  load-with-code-conversion("/Users/lakshmansankar/.emacs.d/init.el" "/Users/lakshmansankar/.emacs.d/init.el" t t)
  load("/Users/lakshmansankar/.emacs.d/init" t t)
  #[0 "�52   6=3�7�0Q2; 1=4�7�2Q2;3745#3*62;3747#3:0\nB�12;62�3�21#0�2=3a4567�7Q!\"3�21#0�2=3`��0�330�!12332�!13P4�!3}1204�!37�2042��315��\"3767��#001!0��6�\f?504�3221#)2�7" [init-file-user system-type delayed-warnings-list user-init-file inhibit-default-init inhibit-startup-screen ms-dos "~" "/_emacs" windows-nt "/.emacs" directory-files nil "^\.emacs\(\.elc?\)?$" "~/.emacs" "^_emacs\(\.elc?\)?$" (initialization "`_emacs' init file is deprecated, please use `.emacs'") "~/_emacs" t load expand-file-name "init" file-name-as-directory "/.emacs.d" file-name-extension "elc" file-name-sans-extension ".el" file-exists-p file-newer-than-file-p message "Warning: %s is newer than %s" sit-for 1 "default"] 7 "\n\n(fn)"]()
  command-line()
  normal-top-level()

删除 python.el 后,似乎一切正常。