PostgreSQL Modülü Nasıl Derlenir
ServBay kullanarak PostgreSQL geliştirirken, veritabanının işlevselliğini artırmak için ek PostgreSQL modülleri derleyip yüklemeniz gerekebilir. Bu makale, ServBay ortamında PostgreSQL modüllerini nasıl derleyeceğinizi anlatmaktadır, özellikle postgis
ve pg_jieba
modüllerinin derlenmesini içermektedir.
Ön Koşullar
PostgreSQL modüllerini derlemeye başlamadan önce, derleme ortamını başlattığınızdan emin olun. Derleme ortamının nasıl başlatılacağına dair ayrıntılı adımlar için ServBay kullanarak yeniden derleme belgesine bakın.
PostgreSQL Sürümünü Belirlemenin Önemi
ServBay birden fazla PostgreSQL sürümüyle birlikte gelir. Derleme araçlarını kullanarak derleme yaparken, kullanılan PostgreSQL sürümünü ve ilgili yapılandırmaları belirtmek çok önemlidir. Farklı PostgreSQL sürümlerinin farklı yapılandırmaları ve bağımlılıkları olabileceğinden, doğru sürümü seçmek derleme hatalarını ve çalışma zamanı sorunlarını önleyebilir.
Bu örnekte PostgreSQL 15
kullanılmıştır.
Postgis Modülünü Derlemek
postgis
modülü, coğrafi bilgi sistemi (GIS) verilerini işlemek için PostgreSQL’e eklenen bir uzantıdır. İşte postgis-3.4.2
modülünü derlemek için adımlar:
Adım 1: Kaynak Kodunu İndirin
Öncelikle, PostGIS resmi web sitesinden postgis-3.4.2
modülünün kaynak kod paketini indirin.
wget https://download.osgeo.org/postgis/source/postgis-3.4.2.tar.gz
Adım 2: Kaynak Kod Paketini Çıkartın
İndirilen kaynak kod paketini çıkartın.
tar zxvf postgis-3.4.2.tar.gz
cd postgis-3.4.2
2
Adım 3: Derleme Seçeneklerini Yapılandırın
Derleme seçeneklerini yapılandırın, PostgreSQL’in yapılandırma yolunu ve diğer parametreleri belirtin.
./configure --prefix=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7 --bindir=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin --datarootdir=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/share --with-protobufdir=${SERVBAY_BIN_PATH} --disable-nls --without-raster --without-topology --with-pgconfig=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/pg_config CFLAGS="${CFLAGS} -I${SERVBAY_COMMON_INCLUDE_PATH}/libxml2 -I${SERVBAY_COMMON_INCLUDE_PATH}" CXXFLAGS="${CXXFLAGS} -std=c++17 -I${SERVBAY_COMMON_INCLUDE_PATH}/libxml2 -I${SERVBAY_COMMON_INCLUDE_PATH}" LDFLAGS="${LDFLAGS} -L${SERVBAY_COMMON_LIB_PATH} -lxml2 -lz -lpthread -liconv -licui18n -licuuc -licudata -lm"
Adım 4: Derleme ve Yükleme
postgis-3.4.2
modülünü derleyip yükleyin.
make -j ${CPU_NUMBER}
make install
2
Adım 5: Modül Yüklemesini Doğrulayın
PostgreSQL komut satırı aracı kullanarak postgis
modülünün başarılı bir şekilde yüklenip yüklenmediğini doğrulayın:
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "CREATE EXTENSION postgis;"
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "SELECT PostGIS_Version();"
2
Modül başarılı bir şekilde yüklendiyse, PostGIS
sürüm bilgilerini görmelisiniz.
Pg_jieba Modülünü Derlemek
pg_jieba
modülü, Çince metin bölme için PostgreSQL’e eklenen bir uzantıdır. İşte pg_jieba
modülünü derlemek için adımlar:
Adım 1: Kaynak Kodunu Alın
Öncelikle, GitHub’dan pg_jieba
modülünün kaynak kod deposunu klonlayın.
git clone https://github.com/jaiminpan/pg_jieba.git
cd pg_jieba
git submodule update --init --recursive
2
3
Adım 2: Derleme Seçeneklerini Yapılandırın
Derleme seçeneklerini yapılandırın, PostgreSQL’in yapılandırma yolunu ve diğer parametreleri belirtin.
cmake -S . -B builddir -DCMAKE_PREFIX_PATH=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7 -DCMAKE_OSX_DEPLOYMENT_TARGET=${BUILD_OS_MIN_VERSION} -DCMAKE_OSX_ARCHITECTURES=${BUILD_CPU_ARCH_CMAKE}
Adım 3: Derleme ve Yükleme
pg_jieba
modülünü derleyip yükleyin.
cmake --build builddir -j ${CPU_NUMBER}
cmake --install builddir
2
Adım 4: Modül Yüklemesini Doğrulayın
PostgreSQL komut satırı aracı kullanarak pg_jieba
modülünün başarılı bir şekilde yüklenip yüklenmediğini doğrulayın:
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "CREATE EXTENSION pg_jieba;"
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "SELECT * FROM pg_available_extensions WHERE name = 'pg_jieba';"
2
Modül başarılı bir şekilde yüklendiyse, pg_jieba
ile ilgili bilgileri görmelisiniz.
Özet
Bu adımlar sayesinde ServBay ortamında gerekli PostgreSQL modüllerini derleyip yükleyebilirsiniz. Derleme işlemi sırasında, doğru PostgreSQL sürümünü ve ilgili yapılandırmaları belirttiğinizden emin olun, bu sayede modül veritabanı ortamınızla uyumlu olacaktır. Umarım bu makale PostgreSQL modüllerini derleme işinizi başarıyla tamamlamanıza yardımcı olur.