Ich hatte letztes Jahr die Anweisungen in emacs / nt / INSTALL für den 32-Bit-Build ausprobiert, aber etwas ist schiefgegangen (ich weiß nicht mehr genau, was), also habe ich kürzlich die Anweisungen für
emacsbinw64 ausprobiert - es hat sehr gut funktioniert und es hat funktioniert war einfacher, auch die notwendigen Bibliotheken zu bekommen. Es verwendet MSYS2 und MinGW-w64 für einen 64-Bit-Build - das emacsbinw64-Projekt bietet Binärdateien unter https://sourceforge.net/projects/emacsbinw64/files/ .
Deshalb habe ich einige Anweisungen nach diesem Entwurf mit dem Feedback von Eli Zaretski und dem Autor Chris Zheng verfasst. Die Vollversion finden Sie unter http://git.savannah.gnu.org/cgit/emacs.git/plain/nt/INSTALL .W64? H = emacs-25 (beinhaltet auch das Bauen aus einem Release-Tarball).
Bei einer Intel i3- und Hochgeschwindigkeits-Internetverbindung (YMMV) dauerte dies insgesamt etwa 90 Minuten. Beachten Sie, dass der größte Teil der Arbeit zum Erstellen unter Windows darin besteht, nur die Build-Umgebung einzurichten ...
Bedarf
Der insgesamt benötigte Speicherplatz beträgt 3 GB: 1,8 GB für MSYS2 / MinGW-w64 und 1,2 GB für Emacs mit dem vollständigen Repository.
Laden Sie MinGW-w64 und MSYS2 herunter und installieren Sie es
Laden Sie die x86_64-Version von MSYS2 (dh msys2-x86_64-.exe) von https://sourceforge.net/projects/msys2/files/Base/x86_64 herunter .
Führen Sie diese Datei aus, um MSYS2 in Ihrem bevorzugten Verzeichnis zu installieren, z. B. das Standardverzeichnis C: \ msys64. Dadurch wird auch MinGW-w64 installiert. Beachten Sie, dass Verzeichnisnamen, die Leerzeichen enthalten, Probleme verursachen können.
Anschließend müssen Sie Ihrer Windows PATH-Umgebungsvariablen die folgenden Verzeichnisse hinzufügen:
c:\msys64\usr\bin;c:\msys64\mingw64\bin
Sie können dies über Systemsteuerung / System und Sicherheit / System / Erweiterte Systemeinstellungen / Umgebungsvariablen / Bearbeitungspfad tun.
Durch Hinzufügen dieser Verzeichnisse zu Ihrem PATH wird Emacs mitgeteilt, wo sich die DLLs befinden, die ausgeführt werden sollen, sowie einige optionale Befehle wie grep und find. Diese Befehle sind auch in der Windows-Konsole verfügbar.
Laden Sie die erforderlichen Pakete herunter und installieren Sie sie
Führen Sie msys2_shell.bat in Ihrem MSYS2-Verzeichnis aus, und ein BASH-Fenster wird geöffnet.
Verwenden Sie in der BASH-Eingabeaufforderung den folgenden Befehl, um die erforderlichen Pakete zu installieren (Sie können sie mit Umschalt + Einfügen kopieren und in die Shell einfügen):
pacman -S base-devel \
mingw-w64-x86_64-toolchain \
mingw-w64-x86_64-xpm-nox \
mingw-w64-x86_64-libtiff \
mingw-w64-x86_64-giflib \
mingw-w64-x86_64-libpng \
mingw-w64-x86_64-libjpeg-turbo \
mingw-w64-x86_64-librsvg \
mingw-w64-x86_64-libxml2 \
mingw-w64-x86_64-gnutls
Sie haben jetzt eine vollständige Build-Umgebung für Emacs.
Installieren Sie Git (optional) und deaktivieren Sie autocrlf
Wenn Sie Git noch nicht auf Ihrem System haben, können Sie es in Ihrer MSYS2-Umgebung installieren mit:
pacman -S git
Die Autocrlf-Funktion von Git kann die Konfigurationsdatei beeinträchtigen. Deaktivieren Sie diese Funktion daher am besten, indem Sie den folgenden Befehl ausführen:
git config core.autocrlf false
Holen Sie sich den Emacs-Quellcode
Gehen Sie wie folgt vor, um das Git-Repository herunterzuladen: Dadurch wird die Emacs-Quelle in C: \ emacs \ emacs-25 verschoben:
mkdir /c/emacs
cd /c/emacs
git clone git://git.sv.gnu.org/emacs.git emacs-25
Baue Emacs
Jetzt können Sie Emacs mit Autogen erstellen und installieren, konfigurieren, erstellen und installieren.
Zuerst müssen wir zur MinGW-w64-Umgebung wechseln. Beenden Sie die MSYS2 BASH-Konsole und führen Sie mingw64_shell.bat im Ordner C: \ msys64 aus. Anschließend kehren Sie in Ihr Emacs-Quellverzeichnis zurück, z.
cd /c/emacs/emacs-25
Führen Sie autogen aus
Wenn Sie die Entwicklungsquellen erstellen, führen Sie autogen aus, um das Konfigurationsskript zu generieren:
./autogen.sh
Führen Sie configure aus
Jetzt können Sie configure ausführen, wodurch die verschiedenen Makefiles erstellt werden.
Die Option '--prefix' gibt einen Speicherort für die resultierenden Binärdateien an, die von 'make install' verwendet werden. In diesem Beispiel setzen wir ihn auf C: \ emacs \ emacs-25. Wenn kein Präfix angegeben wird, werden die Dateien in den Standard-Unix-Verzeichnissen in Ihrem Verzeichnis C: \ msys64 abgelegt. Dies wird jedoch nicht empfohlen.
Beachten Sie auch, dass wir Imagemagick deaktivieren müssen, da Emacs es unter Windows noch nicht unterstützt.
PKG_CONFIG_PATH=/mingw64/lib/pkgconfig \
./configure --prefix=/c/emacs/emacs-25 --without-imagemagick
Führen Sie make aus
Dadurch werden Emacs kompiliert, die ausführbaren Dateien erstellt und im Verzeichnis src abgelegt:
make
Um den Vorgang zu beschleunigen, können Sie versuchen, ihn auszuführen
make -jN
Dabei ist N die Anzahl der Kerne in Ihrem System. Wenn Ihr MSYS2-Make die parallele Ausführung unterstützt, wird es erheblich schneller ausgeführt.
Führen Sie make install aus
Jetzt können Sie "make install" ausführen, wodurch die ausführbare Datei und andere Dateien an den im Konfigurationsschritt angegebenen Speicherort kopiert werden. Dadurch werden die Verzeichnisse bin, libexec, share und var erstellt:
make install
Du kannst auch sagen
make install prefix=/c/somewhere
um sie woanders zu installieren.
Testen Sie Emacs
Führen Sie es aus, um es zu testen
./bin/runemacs.exe -Q
und wenn alles gut gegangen ist, haben Sie eine neue 64-Bit-Version von Emacs.
Machen Sie eine Verknüpfung
Um eine Verknüpfung zum Ausführen der neuen Emacs zu erstellen, klicken Sie mit der rechten Maustaste auf den Speicherort, an dem Sie sie ablegen möchten, z. B. den Desktop, wählen Sie Neu / Verknüpfung aus, wählen Sie dann runemacs.exe im Ordner bin der neuen Emacs aus und geben Sie ihm einen Namen .
Sie können beliebige Befehlszeilenoptionen festlegen, indem Sie mit der rechten Maustaste auf die resultierende Verknüpfung klicken, Eigenschaften auswählen und dem Befehl Ziel beliebige Optionen hinzufügen, z. B. --debug-init.
Credits
Vielen Dank an Chris Zheng für die ursprüngliche Build-Gliederung, die vom emacsbinw64-Projekt unter https://sourceforge.net/p/emacsbinw64/wiki/Build%20guideline%20for%20MSYS2-MinGW-w64%20system/ verwendet wird .
Lizenz
Diese Datei ist Teil von GNU Emacs.
GNU Emacs ist freie Software: Sie können sie unter den Bedingungen der GNU General Public License, wie sie von der Free Software Foundation veröffentlicht wurde, entweder Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren Version weitergeben und / oder ändern.
GNU Emacs wird in der Hoffnung verteilt, dass es nützlich sein wird, jedoch OHNE JEGLICHE GARANTIE; ohne auch nur die implizite Garantie der MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Weitere Informationen finden Sie in der GNU General Public License.
Sie sollten eine Kopie der GNU General Public License zusammen mit GNU Emacs erhalten haben. Wenn nicht, siehe http://www.gnu.org/licenses/ .