dyld: Library not loaded: / usr / local/lib / libpng16.16.dylib ze wszystkim co związane z php
Użycie dowolnej aplikacji php skutkuje:
dyld: Library not loaded: /usr/local/lib/libpng15.15.dylib
Referenced from: /usr/local/bin/php
Reason: image not found
[1] 4494 trace trap php
Większość moich aplikacji php została zainstalowana przy użyciu homebrew z wyjątkiem composera (zainstalowanego przy użyciu curl)
Próbowałem usunąć libpng i ponownie zainstalować z homebrew bez skutku.
Następnie należało przełączyć się na najnowszą wersję libpng 1.5 zgodnie z Komunikatem o błędzie:
$ brew info libpng
libpng: stable 1.6.10 (bottled)
http://www.libpng.org/pub/png/libpng.html
/usr/local/Cellar/libpng/1.5.17 (15 files, 1.0M)
Poured from bottle
/usr/local/Cellar/libpng/1.5.18 (15 files, 1.0M)
Poured from bottle
/usr/local/Cellar/libpng/1.6.10 (17 files, 1.3M) *
$ brew switch libpng 1.5.18
Cleaning /usr/local/Cellar/libpng/1.5.17
Cleaning /usr/local/Cellar/libpng/1.5.18
Cleaning /usr/local/Cellar/libpng/1.6.10
16 links created for /usr/local/Cellar/libpng/1.5.18
Teraz błąd zmienił się na:
dyld: Library not loaded: /usr/local/lib/libpng16.16.dylib
Referenced from: /usr/local/lib/libfreetype.6.dylib
Reason: image not found
[1] 6993 trace trap phpunit
Im uruchomiony Mavericks (10.9.2) i PHP 5.5.1.
Dzięki w naprzód!
11 answers
Proponuję uruchomić:
$ brew update && brew upgrade
Jeszcze kilka minut temu też miałem ten problem. Ponieważ mam aktualną wersję PHP, rozwiązałem ją za pomocą:
$ brew reinstall php55
Mam nadzieję, że to pomoże.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-03-28 04:40:46
Zastosowałem się do powyższego (nigdy nie jest to zły pomysł, aby być na bieżąco z brew tak czy inaczej) i nadal miałem dokładnie ten sam problem:
LAPTOP:folder Username$ php -v
dyld: Library not loaded: /usr/local/lib/libpng15.15.dylib
Referenced from: /usr/local/bin/php
Reason: image not found
Trace/BPT trap: 5
Potem wymyśliłem prostszy sposób:
Szukaj wersji libpng na swoim pudełku:
# Requires locate & updatedb for mac os x
# See Link [1]
LAPTOP:folder Username$ locate libpng15.15.dylib
/Applications/GIMP.app/Contents/Resources/lib/libpng15.15.dylib
/usr/X11/lib/libpng15.15.dylib
/usr/local/Cellar/libpng/1.5.14/lib/libpng15.15.dylib
Utwórz dowiązanie symboliczne:
LAPTOP:folder Username$ ln -s /usr/local/Cellar/libpng/1.5.14/lib/libpng15.15.dylib /usr/local/lib/libpng15.15.dylib
Spróbuj jeszcze raz:
LAPTOP:folder Username$ php -v
PHP 5.3.26 (cli) (built: Aug 25 2013 16:07:23)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies
with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-20 10:04:20
To dlatego, że nie ma dowiązań symbolicznych dla libpng. Musisz ponownie połączyć libpng.
brew unlink libpng && brew link libpng
I możesz dostać jakiś błąd. Naprawiłem ten błąd poprawiając uprawnienia. Może to przez odinstalowane macports.
sudo chown -R yourid:staff /usr/local/share/man/
Utwórz link jeszcze raz i będzie działać.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-26 13:34:22
Rozwiązałem to kopiując do brakującego katalogu:
cp /opt/X11/lib/libpng15.15.dylib /usr/local/lib/libpng15.15.dylib
Brew reinstall libpng instalował libpng16, a nie libpng15, więc zostałem zmuszony do wykonania powyższego.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-02 06:42:09
W moim przypadku było to libjpeg
. Wszystko, co musiałem zrobić, to uciec brew reinstall libjpeg
i wszystko po prostu działało!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-17 12:12:12
Na wypadek gdyby ktoś inny napotkał ten problem rozwiązałem go przez następujące
brew update && brew upgrade # installs libpng 1.6
To spowodowało błąd z innymi pakietami wymagającymi 1.5, z którymi zostały zbudowane, więc podlinkowałem:
cd /usr/local/lib/
ln -s ../Cellar/libpng/1.5.18/lib/libpng15.15.dylib
Teraz oboje żyją w harmonii i ramię w ramię dla różnych pakietów. Lepiej byłoby odbudować pakiety, które zależą od 1.5, ale działa to jako szybka naprawa bandaży.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-09-23 14:13:01
Wiem, że to pytanie ma już odpowiedź, która daje rozwiązanie. Ale chcę ci dać moje dwa centy, aby pomóc ludziom zrozumieć problem. Otrzymanie tego samego problemu stworzyłem konkretne pytanie . Mam ten sam problem, ale tylko z PHPStorm. I dokładnie wtedy, gdy próbuję uruchomić test z edytora.
Dyld jest łącznikiem dynamicznym
Siedziałem, że dyld szukał /usr / local/lib / libpng15.15.dylib, ale w moim / usr / lokalnym / lib / nie było. W tym folderze mam libpng16.16.dylib.
Dzięki komentarzowi odkryłem, że mój / usr / bin / php był wskaźnikiem do php 5.5.8. Zamiast tego ... /usr / local/bin / php was 5.5.14. PHPStorm pracował z /usr/bin/php, który jest domyślną konfiguracją. Kiedy uruchamiam php przez konsolę, uruchamiam / urs / local/bin / php.
Więc, ... Jeśli pojawi się jakiś błąd dyld, może masz złą konfigurację php. To jest powód, ponieważ
$ brew update && brew upgrade
$ brew reinstall php55
Ale nie wiem, dlaczego to nie rozwiązuje problemu dla mnie. Może dlatego, że mam
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:47:30
Też miałem ten problem i Żadne z rozwiązań w tym wątku nie zadziałało dla mnie. Jak się okazuje problem polegał na tym, że miałem tę linię w ~/.bash_profile
:
alias php="/usr/local/php/bin/php"
I, jak się okazuje, /usr/local/php
był tylko dowiązaniem symbolicznym do /usr/local/Cellar/php54/5.4.24/
. Więc kiedy wywołałem php -i
wciąż wywoływałem php54. Właśnie usunąłem ten wiersz z mojego profilu bash, a potem zadziałało php.
Z jakiegoś powodu, nawet jeśli php55 był teraz uruchomiony, plik php.ini
z php54 nadal był ładowany i otrzymywałem to Ostrzeżenie za każdym razem, gdy wywołanie php:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/Cellar/php54/5.4.38/lib/php/extensions/no-debug-non-zts-20100525/memcached.so' - dlopen(/usr/local/Cellar/php54/5.4.38/lib/php/extensions/no-debug-non-zts-20100525/memcached.so, 9): image not found in Unknown on line 0
Aby to naprawić, dodałem następujący wiersz do mojego profilu bash:
export PHPRC=/usr/local/etc/php/5.5/php.ini
I wtedy wszystko działało normalnie!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-29 15:53:37
Miałem ten błąd, który nie został rozwiązany przez brew update && brew upgrade
. Z jakiegoś powodu musiałem zainstalować go od zera:
$ brew install libpng
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-30 21:17:31
Bardzo ciężko mi było z tym błędem:
Powód: niezgodna wersja biblioteki: php wymaga wersji 44.0.0 lub nowszej, ale libpng16. 16.dylib zapewnia wersja 42.0.0 Trace / BPT trap: 6
Zrobiłem wszystkie powyższe rzeczy z brew i wiele więcej ... ale to nie było to !
Sprawdź gdzie jest Twoja biblioteka:
Sudo find / -nazwa libpng16. 16.dylib
W moim przypadku tutaj był odpowiedni wynik :
- /usr/local/lib/libpng16. 16.dylib
- /usr/local/Cellar/libpng/1.6.34/lib/libpng16.16.dylib
- /Applications/MAMP/Library/lib/libpng16. 16.dylib
- /opt/X11/lib/libpng16. 16.dylib
Więc jak jestem użytkownikiem MAMP okazało się, że błąd pojawił się podczas próby aktualizacji z PHP 7.1.0 do 7.1.8 ( ostatni MAMP php dostępny ) jako Symfony4 wymagają co najmniej 7.1.3
Na koniec zainstalowałem nową wersję MAMPA i zadziałało (4.1-4.2). Jednak bądź ostrożny, gdy to robisz, musisz najpierw wykonać kopię zapasową wszystkiego w folderze MAMP / htdoc. Przechowuj również kopię zapasową niestandardowej skompilowanej wersji php niż może żyć w MAMP / bin / php. (W moim przypadku miałem specjalną wersję PHP ze sterownikami Oracle).
Również jeśli skonfigurowałeś wersję MAMP php jako interpreter CLI php, musisz zaktualizować ścieżkę w swoim .bash_profile
Powinno wyglądać mniej więcej tak:
Eksport PATH= / Applications/MAMP/bin/php/php7.1.8 / bin:$PATH
Mam nadzieję, że to pomoże.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-26 10:46:46
Mam ten problem po aktualizacji MAMP, a ustawiona przeze mnie niestandardowa ścieżka $była błędna z powodu nowej wersji php, więc najpierw załadowano niewłaściwą wersję php i to właśnie ta wersja php wywołała błąd.
Aktualizacja ścieżki w moim .bash_profile naprawił mój problem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-06 14:49:04