First of all install update and upgrade your system:
$ sudo apt update
$ sudo apt upgrade
Then, install required libraries:
git clone -b master git://git.sv.gnu.org/emacs.git | |
cd emacs/ | |
git checkout emacs-25.3 | |
sudo apt install --no-install-recommends texinfo | |
sudo apt install libgtk-3-dev libxpm-dev libjpeg8-dev libgif-dev libtiff5-dev libtinfo-dev librsvg2-dev libmagickwand-dev libacl1-dev libgnutls-dev | |
# Note: if you have installed Anaconda python distribution, it will | |
# affect how linker find libjpeg8 dynamic library files. To resolve | |
# this, simply remove Anaconda directory from PATH variable. | |
# ./autogen.sh | |
# ./configure |
// Just before switching jobs: | |
// Add one of these. | |
// Preferably into the same commit where you do a large merge. | |
// | |
// This started as a tweet with a joke of "C++ pro-tip: #define private public", | |
// and then it quickly escalated into more and more evil suggestions. | |
// I've tried to capture interesting suggestions here. | |
// | |
// Contributors: @r2d2rigo, @joeldevahl, @msinilo, @_Humus_, | |
// @YuriyODonnell, @rygorous, @cmuratori, @mike_acton, @grumpygiant, |