Setelah kemarin kita sudah mempelajari bersama cara Menginstall PHP 8 di Void Linux (Compile From Source), kita selanjutnya akan mempelajari untuk mengcompile php extension sendiri. Sedikit bercerita, setelah kemarin saya melakukan kompilasi PHP 8 di Void Linux saya, saya menemukan masalah karena phpMyAdmin memerlukan extension zlib dimana extension tersebut tidak saya sertakan ketika melakukan kompilasi php 8.
Jika anda tidak melakukan kompilasi php sendiri, silahkan instal development version dari php anda, misalnya dengan sudo xbps-install php-devel
untuk void, sudo apt-get install php-dev
untuk debian based distro, sudo dnf install php-devel
untuk fedora dan opensuse, untuk Arch development package akan diinstall secara default ketika menginstall PHP.
Melakukan Kompilasi Extension PHP
Persyaratan
Sebelum melakukan kompilasi, pastikan anda sudah memiliki source code extension php yang akan dicompile. Selain dari halaman resminya, anda juga dapat mengclone repository resmi php di github.
Melakukan Persiapan Kompilasi
Silahkan buka terminal, lalu arahkan menuju direktori extension yang akan anda install. Biasanya terletak di {lokasi source code php}/ext/{nama extension}
. Setelah berada di direktori tersebut, lalu jalankan perintah:
phpize
Dilansir dari situs resmi php Perintah phpize ini berguna untuk menyiapkan enviroment untuk melakukan kompilasi extension.
Terkadang, anda akan menemukan pesan kesalahan seperti ini:
Cannot find config.m4.
Make sure that you run '/usr/local/bin/phpize' in the top level source directory of the module
Untuk mengatasinya, kita harus melakukan rename config yang ada (biasanya terdapat tambahan angka 0 dibelakang nama filenya):
mv config*.m4 config.m4
Lalu jalankan perintah phpize
lagi.
Melakukan Konfigurasi Kompilasi
Sama seperti proses konfigurasi untuk kompilasi php, silahkan jalankan perintah berikut ini:
./configure
Untuk melihat konfigurasi extension yang tersedia, jalankan:
./configure --help
Melakukan Proses Kompilasi
Setelah melakukan konfigurasi, saatnya melakukan kompilasi. Sama seperti program C lainnya, gunakan perintah ini untuk melakukan kompilasi:
make
Jika kompilasi sukses akan ada hasil kurang lebih seperti ini:
Melakukan Installasi Extension
Setelah kompilasi berhasil, sama seperti program C lainnya, jalankan perintah berikut untuk melakukan installasi:
sudo make install
Mengubah Konfigurasi PHP.INI
Langkah terakhir adalah kita harus mengubah konfigurasi php.ini
agar meload extension yang baru saja diinstall. Biasanya file php.ini
terletak di /usr/local/lib/php.ini
atau /etc/php.ini
tergantung konfigurasi server anda.
Cari line extension={nama extension yang diinstall}
dan uncoment line tersebut, atau jika tidak ada tambahkan saja:
Mengecek Extension terload di PHP
Jalankan perintah php -m
di terminal untuk melihat extension apa saja yang sudah terload di konfigurasi. Jika extension yang baru saja dicompile ada, berarti konfigurasi berhasil:
Kesimpulan
Proses kompilasi Extension php bisa dibilang sangat mudah bagi orang yang sudah terbiasa dengan terminal dan enviroment linux itu sendiri. Sebenarnya lebih mudah menginstall extension ini dari package management distro anda, tetapi terkadang extension tersebut tidak ada atau karena versi php anda belum ada di package distro anda.
Sekain artikel kali ini, Terima Kasih telah membaca!