Laravel Herd kullanıyorsanız ve macOS Monterey (12.x) üzerinde özellikle Intel Mac’te PHP 8.4’e güncelleme yaptıysanız, şu hata ile karşılaşmış olabilirsiniz:
dyld: Symbol not found: (__ZNSt3__122__libcpp_verbose_abortEPKcz)
Referenced from: '/Users/macbook/Library/Application Support/Herd/bin/php84'
Expected in: '/usr/lib/libc++.1.dylib'
zsh: abort php artisan serve --host localhost --port 8001
Herd’in PHP’sini en son sürüme güncelledim ve Laravel hiçbir şey çalıştırmadı çünkü PHP hemen çökmeye başladı. Hatta php -v komutu bile aynı dyld hatasını verdi.
GitHub sorunları arasında dolaşarak ve deneyerek en sonunda bunu çalıştırmayı başardım. İşte benim için bunu çözmenin kesin yolu.
Orijinal sorun burada tartışılıyor:
Orijinal sorun için buraya bakın
Gerçekte Ne Oluyor?
Gerçekte Ne Oluyor?
Kısaca:
Herd’in son PHP 8.3/8.4 ikili dosyaları, macOS Monterey’in libc++’ının sağladığından daha yeni bir C++ standardına göre inşa edilmiştir.
Bu tür hatalar çerçeve sorunları değildir; ikili dosya ile işletim sistemi arasında çalışma zamanı simgesi uyumsuzluklarıdır.
Monterey (12.x), /usr/lib/libc++.1.dylib içinde gerekli simgeleri bulamaz, bu yüzden PHP başlangıçta çöküyor.
Nihayet Çalışan Çözüm
Nihayet Çalışan Çözüm
Adım 1 – Uyumlu Herd PHP Yapısını İndirin
Adım 1 – Uyumlu Herd PHP Yapısını İndirin
macOS Monterey’de çalıştığı bilinen Herd’in sağladığı PHP 8.4.15 x86 ikili dosyalarını kullandım:
https://download.herdphp.com/8.4/8.4.15/php84-x86
https://download.herdphp.com/8.4/8.4.15/php84-fpm-x86
Bunlar, Herd kurulumu içindeki bozuk dosyaları değiştirdim dosyalardı.
Adım 2 – Bunları Herd’in Bin Klasörüne Taşıyın
Adım 2 – Bunları Herd’in Bin Klasörüne Taşıyın
Bozuk Herd ikili dosyalarını şu şekilde değiştirdim:
mv ~/Downloads/php84-x86 ~/Library/Application\ Support/Herd/bin/php84
mv ~/Downloads/php84-fpm-x86 ~/Library/Application\ Support/Herd/bin/php84-fpm
Bu noktada, Herd hala kullanıcı arayüzünde PHP 8.4.16 gösteriyordu — ama CLI, izinleri düzelttikten sonra farklı bir hikaye anlattı.
Adım 3 – İzinleri Doğru Bir Şekilde Düzeltin
Adım 3 – İzinleri Doğru Bir Şekilde Düzeltin
Bu kısım ince bir noktadır — sadece chmod +x yaparsanız, yine sessizce başarısız olabilir. Benim için işe yarayan şuydu:
cd ~/Library/Application\ Support/Herd/bin
chmod 755 php84 php84-fpm
Bu, ikili dosyalara doğru yürütme haklarını verdi.
Adım 4 – Çalıştığını Doğrulayın
Adım 4 – Çalıştığını Doğrulayın
Şimdi php -v komutunu çalıştırdığımda:
php -v
Aldığım çıktı şöyleydi:
PHP 8.4.15 (cli) (built: Nov 21 2025 02:39:21) (NTS clang 15.0.0)
Copyright (c) The PHP Group
Built by Laravel Herd
Zend Engine v4.4.15
Hiçbir dyld hatası yok. Laravel çalışıyor. FPM başlıyor. Uygulamalarım düzgün bir şekilde hizmet veriyor.
Deneyimlerimden Bazı Notlar
- Herd’in UI sürüm numarası hemen güncellenmeyebilir, ancak endişelenmeyin — CLI sürümü önemlidir.
- Önceden 502 hataları alıyorsanız, Herd hizmetlerini yeniden başlatmanız gerekebilir.
- Bu aynı desen, daha eski sürümler için (PHP 8.3 / 8.2) de işe yarar. GitHub dizisindeki bağlantılarda bunlar için de dosyalar mevcuttur.
Aşağıda dizinin referans bağlantıları bulunmaktadır:
PHP 8.3.28 (x86 + FPM)
https://download.herdphp.com/8.3/8.3.28/php83-x86
https://download.herdphp.com/8.3/8.3.28/php83-fpm-x86
PHP 8.2.29 (x86 + FPM)
https://download.herdphp.com/8.2/8.2.29/php82-x86
https://download.herdphp.com/8.2/8.2.29/php82-fpm-x86
Kaynak: Orijinal Makale


