When installing a package from the package menu, can/will package-install do automatic byte compilation of the installed package files? Or is this something the user must do manually himself afterwards?

For example, I have installed auctex from the package menu, but there are no *.elc files in my ~/.emacs.d/elpa/auctex-11.89.5 directory. Also I see from the source of package.el that there is a function package--compile at line 942 (so that should indicate that it can byte-compile)

There is no mention of byte-compilation in the Manual as far as I can see.

I am also wondering that I might have deleted the *.elc files myself and forgotten about it.

  • 1
    I didn't read the package.el code, but my understanding was that it would compile all ELisp code except for some special files (typically, the autoloads and iirc one can also put a special comment in lisp files to prevent batch byte-compilation, this would be in the "Local Variables" section, no-byte-compile: t.
    – wvxvw
    Commented Feb 13, 2017 at 10:29
  • If you think the manual needs improvement (e.g. it should mention byte-compiling), please consider filing a bug report: M-x report-emacs-bug.
    – Drew
    Commented Feb 13, 2017 at 17:29

1 Answer 1


package-install does byte-compile the files, yes. Not sure how/why your auctex install doesn't have any .elc files, tho. Maybe a bug, or a pilot error.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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