wget dà errore "dyld: Libreria non caricata: /opt/local/lib/libnettle.4.dylib"

2

Quando provo a utilizzare wget , ricevo questo messaggio di errore:

$: wget
dyld: Library not loaded: /opt/local/lib/libnettle.4.dylib
  Referenced from: /opt/local/bin/wget
  Reason: image not found
Trace/BPT trap: 5

Ho reinstallato wget utilizzando homebrew ( brew reinstall wget ), ho aggiornato e aggiornato il mio homebrew, tuttavia questo non ha aiutato.

Nella mia cartella /opt/local/lib/ non riesco a trovare libnettle.4.dylib , tuttavia trovo /opt/local/lib/libnettle.6.dylib . Ho provato a risolvere il problema semplicemente tramite il collegamento simbolico da /opt/local/lib/libnettle.6.dylib a /opt/local/lib/libnettle.4.dylib . Anche questo non è stato d'aiuto, ma mi ha dato un nuovo messaggio di errore:

$ wget
dyld: Library not loaded: /opt/local/lib/libhogweed.2.dylib
  Referenced from: /opt/local/lib/libgnutls.28.dylib
  Reason: image not found
Trace/BPT trap: 5

Quando eseguo brew info wget , ottengo questo risultato:

wget: stable 1.17.1 (bottled), HEAD
Internet file retriever
https://www.gnu.org/software/wget/
/usr/local/Cellar/wget/1.17.1 (9 files, 1.6M) *
  Built from source with: --with-debug
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/wget.rb
==> Dependencies
Build: xz ✔, pkg-config ✔
Recommended: openssl ✔
Optional: libressl ✔, pcre ✔, libmetalink ✔, gpgme ✔
==> Options
...

Come posso risolvere questo problema?

    
posta TabeaKischka 26.04.2016 - 15:42
fonte

3 risposte

1

Penso che tu abbia entrambi MacPorts e installato Homebrew. MacPorts si installa di default in / opt / local , mentre Homebrew si installa in / usr / local . Dato che il comando che stai effettivamente eseguendo è / opt / local / bin / wget , probabilmente hai / opt / local / bin prima di / usr / local / bin nel tuo ambiente PATH. Controllalo con:

$ echo $PATH

In tal caso, qualsiasi software installato con Homebrew non viene usato affatto, se non viene chiamato con il suo percorso assoluto. Quindi, prova ad avviare wget di Homebrew con il suo percorso assoluto:

$ /usr/local/bin/wget

Se funziona in questo modo, metti / usr / local / bin come prima cartella nell'ambiente PATH, modificando ~ / .profile o ~ / .bash_profile file.

    
risposta data 26.04.2016 - 16:40
fonte
0

Potresti provare ad aggiornare la cache DYLD:

sudo update_dyld_shared_cache -root / -force

È possibile che la cache della Libreria di collegamento dinamico non sia stata aggiornata per includere le librerie condivise che sono state installate durante l'installazione di wget.

    
risposta data 26.04.2016 - 16:24
fonte
0

Entrambe le altre soluzioni non hanno funzionato per me dopo che ho ricevuto questo errore (da una installazione Homebrew pulita):

dyld: Library not loaded: /usr/local/opt/pcre/lib/libpcre.1.dylib
  Referenced from: /usr/local/bin/wget
  Reason: image not found
Abort trap: 6

Tuttavia, emettendo i seguenti comandi (trovati in link ) ha funzionato bene:

brew uninstall --force pcre
brew install pcre
    
risposta data 08.01.2019 - 13:24
fonte

Leggi altre domande sui tag