PHP Modüllerini Derleme
ServBay ile PHP geliştirme yaparken, PHP'nin işlevselliğini artırmak için ek PHP modüllerini derleyip kurmanız gerekebilir. Bu belge, ServBay ortamında PHP modüllerini, özellikle imagick
ve sqlsrv
modüllerini nasıl derleyeceğinizi anlatmaktadır.
Ön Koşullar
Dikkat
Lütfen aşağıdaki makaleye göre derleme ortamını başlatın ve sistem ortam değişkenlerini ayarlayın, aksi takdirde aşağıdaki işlemler başarısız olacaktır!
PHP modüllerini derlemeye başlamadan önce, derleme ortamını başlattığınızdan emin olun. Derleme ortamını nasıl başlatacağınız hakkında ayrıntılı adımlar için ServBay ile İkincil Derleme belgesine başvurun.
PHP Sürümünü Belirlemenin Önemi
ServBay, birden fazla PHP sürümü ile birlikte gelir, phpize
, php-config
ve diğer araçları kullanarak derleme yaparken, kullandığınız PHP sürümünü belirtmeniz gerekmektedir. Çünkü farklı PHP sürümleri farklı yapılandırma ve bağımlılıklara sahip olabilir, doğru sürümü seçmek derleme hatalarını ve çalışma zamanı sorunlarını önleyebilir.
Bu örnekte PHP 8.3
sürümü kullanılacaktır.
PHP imagick Modülünü Derleme
imagick
modülü, PHP'nin görüntü işleme için kullanılan bir uzantısıdır. imagick
modülünü derlemek için gereken adımlar şunlardır:
Adım 1: Kaynak Kodunu İndirin
Öncelikle, PECL'den imagick
modülünün kaynak paketini indirin.
wget https://pecl.php.net/get/imagick-3.7.0.tgz
Adım 2: Kaynak Paketini Çıkarın
İndirilen kaynak paketini çıkarın.
tar zxvf imagick-3.7.0.tgz
cd imagick-3.7.0
2
Adım 3: Yapılandırma Dosyası Oluşturun
phpize
kullanarak yapılandırma dosyası oluşturun. Bu süreçte, kullandığınız PHP sürümünü belirtmeyi unutmayın. Örneğin, PHP 8.3 kullanıyorsanız, aşağıdaki komutu çalıştırın:
${SERVBAY_PACKAGE_FULL_PATH}/php/8.3/current/bin/phpize
Adım 4: Derleme Seçeneklerini Yapılandırın
Derleme seçeneklerini yapılandırarak PHP'nin yapılandırma yolunu belirtin.
./configure --with-php-config=${SERVBAY_PACKAGE_FULL_PATH}/php/8.3/current/bin/php-config
Adım 5: Derleyin ve Kurun
imagick
modülünü derleyin ve kurun.
make -j ${CPU_NUMBER}
make install
2
Adım 6: Modülü Etkinleştirin
PHP'nin conf.d
dizininde imagick.ini
adında bir dosya oluşturun ve imagick
modülünü etkinleştirin. Örneğin:
echo "extension=imagick.so" > /Applications/ServBay/package/etc/php/8.3/conf.d/imagick.ini
Adım 7: Modül Yüklemesini Doğrulayın
PHP servislerini ServBay yönetim panelinden yeniden başlatın, ardından komut satırında modülün başarıyla yüklenip yüklenmediğini doğrulayın:
php-8.3 -m | grep imagick
Modül başarıyla yüklenmişse, çıktıda imagick
'in yer aldığını görmelisiniz.
PHP sqlsrv Modülünü Derleme
Dikkat
Ön Koşul: macOS altında sqlsrv derlemek için, önce Microsoft'un ODBC sürücüsü msodbcsql18
ve mssql-tools18
yüklemelisiniz.
ServBay, MS ODBC'yi içermez, bu nedenle yüklemek için Homebrew kullanın.
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql18 mssql-tools18
2
3
sqlsrv
modülü, PHP'nin Microsoft SQL Server ile etkileşim kurmasını sağlayan bir uzantıdır. sqlsrv
modülünü derlemenin adımları şunlardır:
Adım 1: Kaynak Kodunu İndirin
Öncelikle, PECL'den sqlsrv
modülünün kaynak paketini indirin.
wget https://pecl.php.net/get/sqlsrv-5.12.0.tgz
Adım 2: Kaynak Paketini Çıkarın
İndirilen kaynak paketini çıkarın.
tar zxvf sqlsrv-5.12.0.tgz
cd sqlsrv-5.12.0
2
Adım 3: Yapılandırma Dosyası Oluşturun
phpize
kullanarak yapılandırma dosyası oluşturun. Bu süreçte, kullandığınız PHP sürümünü belirtmeyi unutmayın. Örneğin, PHP 8.3 kullanıyorsanız, aşağıdaki komutu çalıştırın:
${SERVBAY_PACKAGE_FULL_PATH}/php/8.3/current/bin/phpize
Adım 4: Derleme Seçeneklerini Yapılandırın
Derleme seçeneklerini yapılandırarak PHP'nin yapılandırma yolunu belirtin.
export LDFLAGS="-L/opt/homebrew/lib ${LDFLAGS}"
export CPPFLAGS="-I/opt/homebrew/opt/unixodbc/include ${CPPFLAGS}"
./configure --with-php-config=${SERVBAY_PACKAGE_FULL_PATH}/php/8.3/current/bin/php-config
2
3
Adım 5: Derleyin ve Kurun
sqlsrv
modülünü derleyin ve kurun.
make -j ${CPU_NUMBER}
make install
2
Adım 6: Modülü Etkinleştirin
PHP'nin conf.d
dizininde sqlsrv.ini
adında bir dosya oluşturun ve sqlsrv
modülünü etkinleştirin. Örneğin:
echo "extension=sqlsrv.so" > /Applications/ServBay/package/etc/php/8.3/conf.d/sqlsrv.ini
Adım 7: Modül Yüklemesini Doğrulayın
PHP servislerini ServBay yönetim panelinden yeniden başlatın, ardından komut satırında modülün başarıyla yüklenip yüklenmediğini doğrulayın:
php-8.3 -m | grep sqlsrv
Modül başarıyla yüklenmişse, çıktıda sqlsrv
'nin yer aldığını görmelisiniz.
Sonuç
Yukarıdaki adımlarla, ServBay ortamında ihtiyaç duyduğunuz PHP modüllerini derleyip kurabilirsiniz. Derleme sürecinde doğru PHP sürümünü belirtmeye özen gösterin, böylece modülleriniz PHP ortamınızla uyumlu olur. Umarım bu belge, PHP modüllerinin derlenmesi ve etkinleştirilmesi konusunda size yardımcı olur.