I'm now installing as much as I can through MELPA and Marmalade, and I manage my ~/.emacs.d using git. However, I have git ignore *.elc files.
This means that when I install a package on one system and then start using another system, git pull only gives me the *.el files. Using these files is often slower than using *.elc.
I tried adding the following to ~/.emacs.d/init.el:
;; load the packages we've installed. Note that package-install ;; byte-compiles the packages, but .elc is ignored by git so we force recompilation here (byte-recompile-directory (expand-file-name "~/.emacs.d/elpa") 0) (package-initialize) Unfortunately, this isn't equivalent to the compilation done by package.el. For example, if I install emacs-eclim, package.el doesn't compile emacs-eclim/company-emacs-eclim.el, and I get the following error:
Leaving directory `/home/wilfred/.emacs.d/elpa' Compiling file /home/wilfred/.emacs.d/elpa/emacs-eclim-20130310.1237/company-emacs-eclim.el at Mon Mar 11 15:40:01 2013 Entering directory `/home/wilfred/.emacs.d/elpa/emacs-eclim-20130310.1237/' company-emacs-eclim.el:35:1:Error: Cannot open load file: eclim Warning: reference to free variable `multiple-cursors-mode' Warning: reference to free variable `mc--read-char' Warning: assignment to free variable `mc--read-char' Warning: reference to free variable `multiple-cursors-mode' Warning: reference to free variable `mc--read-quoted-char' Warning: assignment to free variable `mc--read-quoted-char' Warning: reference to free variable `rectangular-region-mode' Warning: reference to free variable `rectangular-region-mode' How do I make Emacs byte-compile only the same files as package.el would?