Saya telah mencoba instruksi di emacs / nt / INSTALL tahun lalu untuk build 32-bit tetapi ada yang salah (saya tidak ingat apa, tepatnya), jadi baru-baru ini saya mencoba instruksi untuk
emacsbinw64 - ini bekerja dengan sangat baik, dan itu lebih sederhana untuk mendapatkan perpustakaan yang diperlukan juga. Ia menggunakan MSYS2 dan MinGW-w64 untuk build 64-bit - proyek emacsbinw64 menyediakan binari di https://sourceforge.net/projects/emacsbinw64/files/ .
Jadi saya menulis beberapa instruksi mengikuti garis besar itu, dengan umpan balik dari Eli Zaretski dan penulis Chris Zheng - versi lengkapnya tersedia di http://git.savannah.gnu.org/cgit/emacs.git/plain/nt/INSTALL .W64? H = emacs-25 (hanya menyertakan bangunan dari tarbal rilis juga).
Ini memakan waktu sekitar 90 menit pada Intel i3 dan koneksi internet kecepatan tinggi - YMMV. Perhatikan bahwa sebagian besar pekerjaan untuk membangun di Windows hanya menyiapkan lingkungan build ...
Persyaratan
Total ruang yang diperlukan adalah 3GB: 1.8GB untuk MSYS2 / MinGW-w64 dan 1.2GB untuk Emacs dengan repositori penuh.
Unduh dan instal MinGW-w64 dan MSYS2
Unduh MSYS2 versi x86_64 (yaitu msys2-x86_64-.exe) dari https://sourceforge.net/projects/msys2/files/Base/x86_64 .
Jalankan file ini untuk menginstal MSYS2 di direktori pilihan Anda, misalnya C default: \ msys64 - ini juga akan menginstal MinGW-w64. Perhatikan bahwa nama direktori yang mengandung spasi dapat menyebabkan masalah.
Maka Anda perlu menambahkan direktori berikut ke variabel lingkungan Windows PATH Anda:
c:\msys64\usr\bin;c:\msys64\mingw64\bin
Anda dapat melakukan ini melalui Panel Kontrol / Sistem dan Keamanan / Sistem / Pengaturan sistem lanjutan / Variabel Lingkungan / Edit path.
Menambahkan direktori ini ke PATH Anda memberi tahu Emacs tempat untuk menemukan DLL yang perlu dijalankan, dan beberapa perintah opsional seperti grep dan find. Perintah-perintah ini juga akan tersedia di konsol Windows.
Unduh dan instal paket yang diperlukan
Jalankan msys2_shell.bat di direktori MSYS2 Anda dan Anda akan melihat jendela BASH dibuka.
Di BASH prompt, gunakan perintah berikut untuk menginstal paket yang diperlukan (Anda dapat menyalin dan menempelkannya ke shell dengan Shift + Insert):
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
Anda sekarang memiliki lingkungan build yang lengkap untuk Emacs.
Instal Git (opsional) dan nonaktifkan autocrlf
Jika Anda belum memiliki Git di sistem Anda, Anda dapat menginstalnya di lingkungan MSYS2 Anda dengan:
pacman -S git
Fitur autocrlf dari Git dapat mengganggu file configure, jadi yang terbaik adalah menonaktifkan fitur ini dengan menjalankan perintah:
git config core.autocrlf false
Dapatkan kode sumber Emacs
Untuk mengunduh repositori Git, lakukan sesuatu seperti berikut - ini akan memasukkan sumber Emacs ke C: \ emacs \ emacs-25:
mkdir /c/emacs
cd /c/emacs
git clone git://git.sv.gnu.org/emacs.git emacs-25
Bangun Emacs
Sekarang Anda siap untuk membangun dan menginstal Emacs dengan autogen, mengkonfigurasi, membuat, dan melakukan instalasi.
Pertama, kita perlu beralih ke lingkungan MinGW-w64. Keluar dari konsol MSYS2 BASH dan jalankan mingw64_shell.bat di folder C: \ msys64, kemudian cd kembali ke direktori sumber Emacs Anda, misalnya:
cd /c/emacs/emacs-25
Jalankan autogen
Jika Anda sedang membangun sumber pengembangan, jalankan autogen untuk menghasilkan skrip configure:
./autogen.sh
Jalankan configure
Sekarang Anda dapat menjalankan configure, yang akan membangun berbagai Makefiles.
Opsi '--prefix' menentukan lokasi untuk file biner yang dihasilkan, yang akan digunakan oleh 'make install' - dalam contoh ini kita atur ke C: \ emacs \ emacs-25. Jika awalan tidak ditentukan file akan dimasukkan ke dalam direktori Unix standar yang terletak di direktori C: \ msys64 Anda, tetapi ini tidak dianjurkan.
Perhatikan juga bahwa kita perlu menonaktifkan Imagemagick karena Emacs belum mendukungnya di Windows.
PKG_CONFIG_PATH=/mingw64/lib/pkgconfig \
./configure --prefix=/c/emacs/emacs-25 --without-imagemagick
Jalankan make
Ini akan mengkompilasi Emacs dan membangun executable, menempatkannya di direktori src:
make
Untuk mempercepat proses, Anda dapat mencoba menjalankan
make -jN
di mana N adalah jumlah core dalam sistem Anda - jika MSYS2 Anda mendukung eksekusi paralel, itu akan berjalan secara signifikan lebih cepat.
Jalankan make install
Sekarang Anda dapat menjalankan "make install", yang akan menyalin file yang dapat dieksekusi dan lainnya ke lokasi yang ditentukan dalam langkah configure. Ini akan membuat direktori bin, libexec, share, dan var:
make install
Bisa juga dikatakan
make install prefix=/c/somewhere
untuk menginstalnya di tempat lain.
Uji Emacs
Untuk mengujinya, jalankan
./bin/runemacs.exe -Q
dan jika semuanya berjalan dengan baik, Anda akan memiliki Emacs versi 64-bit yang baru.
Buat jalan pintas
Untuk membuat pintasan untuk menjalankan Emacs baru, klik kanan pada lokasi di mana Anda ingin meletakkannya, misalnya Desktop, pilih New / Shortcut, lalu pilih runemacs.exe di folder bin dari Emacs baru, dan beri nama .
Anda dapat mengatur opsi baris perintah dengan mengklik kanan pada pintasan yang dihasilkan, pilih Properties, lalu tambahkan opsi ke perintah Target, misalnya --debug-init.
Kredit
Terima kasih kepada Chris Zheng untuk garis besar pembuatan asli seperti yang digunakan oleh proyek emacsbinw64, yang terletak di https://sourceforge.net/p/emacsbinw64/wiki/Build%20guideline%20for%20MSYS2-MinGW-w64%20system/ .
Lisensi
File ini adalah bagian dari GNU Emacs.
GNU Emacs adalah perangkat lunak gratis: Anda dapat mendistribusikannya kembali dan / atau memodifikasinya berdasarkan ketentuan Lisensi Publik Umum GNU yang diterbitkan oleh Free Software Foundation, baik versi 3 dari Lisensi, atau (sesuai pilihan Anda) versi yang lebih baru.
GNU Emacs didistribusikan dengan harapan akan bermanfaat, tetapi TANPA GARANSI APA PUN; bahkan tanpa jaminan tersirat DAGANG atau KECOCOKAN UNTUK TUJUAN TERTENTU. Lihat Lisensi Publik Umum GNU untuk detail lebih lanjut.
Anda seharusnya telah menerima salinan Lisensi Publik Umum GNU bersama dengan GNU Emacs. Jika tidak, lihat http://www.gnu.org/licenses/ .