In my .emacs I have (require 'sr-speedbar). It works fine, but at startup I always see the compile-log-buffer with Warning (bytecomp): reference to free variable 'helm-alive-p'.

According to this question it has to be some wrong definition somewhere, but where?

I guess it has to be in the elisp code in the package, but there is also a .elc-File. I am a newbie to elisp, so I don't want to break anything. How do I get rid of this warning?


Maybe you have to install the helm package...

Another 'solution' is adding this line to your .emacs

(setq byte-compile-warnings '(not free-vars ))
  • Installing helm didn't solve the problem, so I'll stick with your 'solution'. :-) – itmuckel Jun 7 '16 at 11:03
  • 1
    The variable helm-alive-p is defined at line 949 of the current version: github.com/emacs-helm/helm/blob/master/helm.el If the OP has (require 'helm) somewhere before the defadvice of pop-to-buffer -- which contains the offending code of ...(if (featurep 'helm) (not helm-alive-p)... then you would not see a reference to a free variable. However, I don't fully understand why you are byte-compiling when you start Emacs. That is something that normally gets done when installing a package or building, but not every time Emacs is launched. Why is the OP always compiling? – lawlist Jun 7 '16 at 20:24
  • This question is for Micha90, not for me (comment the previous message). I don't use sr-speedbar but with a quick try I notice that the library is really compiled at startup... That's strange but it's like that. – djangoliv Jun 8 '16 at 8:06

Installing helm didn't solve the problem, so I'll stick with your 'solution'. :-)

Try to write (require 'sr-speedbar) after your (require 'helm) with many of your helm configuration along.

(require 'helm)
(require 'helm-config)
;; Your preferred configuration for Helm.
;; ...

(require 'sr-speedbar)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.