Intinya: modul MARC/SRU di SLiMS butuh PEAR (ekosistem paket PHP), terutama file System.php. Jadi solusi efektifnya adalah menginstal PEAR + paket-paket terkait dan memastikan include_path PHP mengenali direktori PEAR.

Pastikan PEAR terpasang di server, misal pakai laragon pada kasus iniJika installer mencoba menulis C:\Windows\pear.ini dan gagal, arahkan konfigurasi ke folder PHP-mu (tanpa admin):
set PHP_PEAR_SYSCONF_DIR=C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64

lalu jalankan ulang php go-pear.phar.

Exception
include(System.php): Failed to open stream: No such file or directory
di lib\Extension.php line 66 saat membuka Bibliografi → Copy Cataloging (MARC SRU) pada SLiMS.

Intinya: modul MARC/SRU di SLiMS butuh PEAR (ekosistem paket PHP), terutama file System.php. Jadi solusi efektifnya adalah menginstal PEAR + paket-paket terkait dan memastikan include_path PHP mengenali direktori PEAR.


Tutorial: Perbaiki Error include(System.php) di SLiMS (Laragon/Windows)

1) Pastikan PEAR terpasang di PHP Laragon

Contoh pakai PHP 8.1.10 – sesuaikan dengan versimu (C:\laragon\bin\php\php-8.x.x).

Buka Terminal Laragon:

cd C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64

:: pakai go-pear terbaru (minim warning)
php -r "copy('https://github.com/pear/pearweb_phars/releases/latest/download/go-pear.phar','go-pear.phar');"

:: jalankan installer, jawab: local
php go-pear.phar
  • Saat ditanya system|local → ketik local (aman, tidak butuh admin).
  • Setelah selesai, akan ada:
  • ...\php-8.1.10-...\pear\ (library PEAR)
  • ...\php-8.1.10-...\pear.bat (perintah PEAR)

Jika installer mencoba menulis C:\Windows\pear.ini dan gagal, arahkan konfigurasi ke folder PHP-mu (tanpa admin):
set PHP_PEAR_SYSCONF_DIR=C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64 lalu jalankan ulang php go-pear.phar.

2) Pastikan include_path PHP memuat folder PEAR

Edit file php.ini versi PHP yang dipakai Apache Laragon (bukan yang lain):

C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64\php.ini

Cari include_path dan set seperti ini (sesuaikan path versimu):

include_path=".;C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64\pear"

Simpan → Restart Apache (Laragon → Apache → Restart).

Cek cepat via terminal:

php -i | findstr /I include_path

3) Instal paket PEAR yang dibutuhkan MARC SRU

Paket yang umum dibutuhkan:

  • System (isi System.php yang dicari error)
  • File_MARC (parser MARC)
  • HTTP_Request2, Net_URL2, Net_Socket (HTTP SRU & dependensi)

Jalankan:

:: (opsional, jaga-jaga config lokal)
set PHP_PEAR_SYSCONF_DIR=C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64
set PATH=C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64;%PATH%

pear channel-update pear.php.net
pear install System
pear install File_MARC
pear install HTTP_Request2
pear install Net_URL2
pear install Net_Socket

Kalau muncul “No releases available …” atau masih mencoba nulis ke C:\Windows\pear.ini, jalankan dengan config lokal eksplisit:

pear -c "C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64\pear.ini" channel-update pear.php.net
pear -c "C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64\pear.ini" install System File_MARC HTTP_Request2 Net_URL2 Net_Socket

4) Verifikasi file kunci bisa di-include

php -r "include 'System.php'; echo 'OK', PHP_EOL;"
php -r "require_once 'File/MARC.php'; echo 'OK', PHP_EOL;"

Kalau cetak OK, dependensi aman.

5) (Opsional) Guard di SLiMS bila include_path bandel

Tambahkan satu baris di sysconfig.inc.php SLiMS (sesuaikan path):

set_include_path(get_include_path() . PATH_SEPARATOR . 'C:/laragon/bin/php/php-8.1.10-Win32-vs16-x64/pear');

Ini memastikan SLiMS “melihat” PEAR meski php.ini beda/belum terbaca.

6) Coba ulang fitur MARC SRU

  • Restart Apache lagi.
  • Buka Bibliografi → Copy Cataloging (MARC SRU).
    Harusnya sudah tidak ada error include(System.php).

FAQ cepat (biar gak nyangkut di tengah jalan)

  • “pear: not recognized”
    Tambahkan folder PHP ke PATH:
  set PATH=C:\laragon\bin\php\php-8.1.10-Win32-vs16-x64;%PATH%

atau set permanen via Environment Variables.

  • PHP CLI vs Apache beda versi
    Pastikan versi PHP yang dipakai terminal = versi PHP yang dipakai Apache (Laragon → PHP → Version). PEAR yang terpasang di satu versi tidak otomatis berlaku di versi lain.
  • Developer menyebut “Perl”
    Yang dimaksud hampir pasti PEAR (ekosistem paket PHP). Buktinya: error mencari System.php + jejak pearValidator.

Ringkasnya (versi “to-do list”)

  1. Install PEAR (local) di C:\laragon\bin\php\php-8.x.x.
  2. Pastikan include_path di php.ini menunjuk ke folder pear.
  3. pear install System File_MARC HTTP_Request2 Net_URL2 Net_Socket.
  4. Verifikasi include 'System.php' sukses.
  5. Restart Apache → Coba MARC SRU.
  6. (Opsional) Tambah set_include_path(...) guard di sysconfig.inc.php.