So installieren Sie den ImageMagick von Brew und korrigieren den Symlink


15

Angenommen, Sie haben Imagemagick von installiert

brew install imagemagick

aber es kommt nicht in deinen PFAD. Zum Beispiel laufe ich erfolglos

compare

da ImageMagick ist nicht in PFAD: -bash: compare: command not found.

Der Befehl ls -l /usr/local/bin/comparegibt

ls: /usr/local/bin/compare: No such file or directory

Mein .bash_profile

if [ -f ~/.bashrc ]; then
    source ~/.bashrc
fi

# http://apple.stackexchange.com/a/53058/15504
export PATH=/usr/bin:/usr/local/bin:/opt/local/sbin:$PATH

Echo $PATHgibt

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/git/bin:/usr/texbin

was da ok zu sein scheint /usr/local/bin/.

ImageMagick in meinem System - Antworten auf die Antwort von 4ae1e1

Der Befehl brew --prefixgibt /usr/localalso ok.

Der Befehl brew info imagemagickgibt

imagemagick: stable 6.9.0-3 (bottled), HEAD
http://www.imagemagick.org
/usr/local/Cellar/imagemagick/6.9.0-3 (1440 files, 22M)
  Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/imagemagick.rb
==> Dependencies
Build: xz ✔, pkg-config 
Required: libtool ✔, xz 
Recommended: jpeg ✔, libpng ✔, freetype 
Optional: fontconfig ✔, libtiff ✔, little-cms ✘, little-cms2 ✘, libwmf ✘, librsvg ✘, liblqr ✘, openexr ✘, ghostscript ✘, webp ✘, fftw 
==> Options
--enable-hdri
        Compile with HDRI support
--with-fftw
        Compile with FFTW support
--with-fontconfig
        Build with fontconfig support
--with-ghostscript
        Build with ghostscript support
--with-jp2
        Compile with Jpeg2000 support
--with-liblqr
        Build with liblqr support
--with-librsvg
        Build with librsvg support
--with-libtiff
        Build with libtiff support
--with-libwmf
        Build with libwmf support
--with-little-cms
        Build with little-cms support
--with-little-cms2
        Build with little-cms2 support
--with-openexr
        Build with openexr support
--with-perl
        enable build/install of PerlMagick
--with-quantum-depth-16
        Compile with a quantum depth of 16 bit
--with-quantum-depth-32
        Compile with a quantum depth of 32 bit
--with-quantum-depth-8
        Compile with a quantum depth of 8 bit
--with-webp
        Build with webp support
--with-x11
        Build with x11 support
--without-freetype
        Build without freetype support
--without-jpeg
        Build without jpeg support
--without-libpng
        Build without libpng support
--without-magick-plus-plus
        disable build/install of Magick++
--HEAD
        Install HEAD version

was ok zu sein scheint.

Ich führe den Befehl aus brew link imagemagickund erhalte

Linking /usr/local/Cellar/imagemagick/6.9.0-3... 
Error: Could not symlink bin/convert
Target /usr/local/bin/convert
already exists. You may want to remove it:
  rm '/usr/local/bin/convert'

To force the link and overwrite all conflicting files:
  brew link --overwrite imagemagick

To list all files that would be deleted:
  brew link --overwrite --dry-run imagemagick

Das scheint seltsam zu sein. Wie können Sie dieses Problem lösen?

Ich führe den Befehl aus brew reinstall imagemagickund erhalte

==> Reinstalling imagemagick
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/imagemagick
Already downloaded: /Library/Caches/Homebrew/imagemagick-6.9.0-3.yosemite.bottle.tar.gz
==> Pouring imagemagick-6.9.0-3.yosemite.bottle.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/convert
Target /usr/local/bin/convert
already exists. You may want to remove it:
  rm '/usr/local/bin/convert'

To force the link and overwrite all conflicting files:
  brew link --overwrite imagemagick

To list all files that would be deleted:
  brew link --overwrite --dry-run imagemagick

Possible conflicting files are:
/usr/local/bin/convert
/usr/local/share/man/man1/convert.1
==> Summary
🍺  /usr/local/Cellar/imagemagick/6.9.0-3: 1440 files, 22M

also etwas falsch in symlinking.

Wie können Sie den Fehler bei symlink beheben?


Was hast du versucht? Wo bist du stecken geblieben? Wissen Sie, wie man die Kommandozeile benutzt? Haben Sie die ImageMagick-Handbuchseiten gelesen? Sie haben uns in der Frage, mit der wir arbeiten sollen, nicht viel gegeben, daher ist es schwierig zu wissen, wie wir Ihnen helfen können. Wir erwarten, dass Sie sich ernsthaft selbst anstrengen, bevor Sie hier nachfragen, und uns in der Frage zeigen, was Sie versucht haben und was passiert ist.
DW

Grundsätzlich führen Sie es einfach vom Terminal mit den gewünschten Optionen aus. Aus Ihrer Frage geht nicht hervor, ob die Ausführung über Terminal fehlschlägt, ob Sie nicht wissen, wie Sie damit eine bestimmte Aufgabe ausführen sollen oder ob Sie ein anderes Problem haben. Bitte klären Sie dies, indem Sie Ihre Frage bearbeiten. Sie wird dann automatisch in die Wiedereröffnungswarteschlange gestellt.
Nohillside

1
Bitte versuchen Sie type -a compareund ls -l /usr/local/bin/compareals Patrix vorgeschlagen.
4ae1e1

1
Ich gebe Ihnen eine Liste von Dingen, die Sie in Kürze ausprobieren sollten.
4ae1e1

1
Vielleicht ist es jetzt ein bisschen nutzlos, aber diese einfache Lösung hat für mich funktioniert
jjrr

Antworten:


12

Eine Liste der Dinge, die Sie versuchen sollten (ich schreibe eine Antwort anstelle eines Kommentars zur besseren Formatierung). Führen Sie hash -rnach jedem Schritt aus (vorausgesetzt, Sie befinden sich in der Bash-Phase; führen Sie rehashstattdessen zsh aus; oder Sie können jederzeit eine neue Shell öffnen).

  1. Führen Sie brew --prefixund sehen Sie, ob die Ausgabe ist /usr/local. Wenn nicht, ist dein brewnicht installiert /usr/local! Fügen $(brew --prefix)/binSie zu Ihnen hinzu $PATH.

  2. Führen Sie es aus brew info imagemagickund stellen Sie sicher, dass es tatsächlich installiert ist. Möglicherweise ist bei der Installation ein Fehler aufgetreten, der einfach nicht erfolgreich war.

  3. Ausführen, brew link imagemagickum einen Symlink zu erstellen /usr/local/bin. Möglicherweise wurden die ausführbaren Dateien nicht richtig verknüpft (aus irgendeinem Grund).

  4. Führen Sie aus, brew reinstall imagemagickum neu zu installieren.

  5. Wenn es immer noch nicht funktioniert, zeigen Sie uns die Ausgabe von brew list imagemagickund wir werden sehen, was falsch ist.


Sie haben Recht! Beim Verknüpfen ist ein Fehler aufgetreten. Siehe mein Update.
Léo Léopold Hertz 준영

Ich habe rm '/ usr / local / bin / convert' und rm '/usr/local/share/man/man1/convert.1' ?
Léo Léopold Hertz 준영

@Masi Das ist nicht das Beste. convertist ein ImageMagick-Befehl, daher würde ich sagen, dass es sicher ist, dies einfach zu tun brew link --overwrite imagemagick. Wenn Sie zu vorsichtig sein möchten, können Sie sich zuerst brew link --overwrite --dry-run imagemagickdie Liste der überschriebenen Dateien ansehen, aber ich würde sagen, dass dies nicht erforderlich ist.
4ae1e1

Übrigens, vielleicht haben Sie eine Nicht-Homebrew-Software installiert, die eine convertBinärdatei enthält /usr/local/bin? Könnten Sie convert --versionsich vergewissern, dass es sich tatsächlich um den ImageMagick handelt convert?
4ae1e1

1
@Masi führt eine hash -rerneute Auflistung der der Shell bekannten Befehle durch. Es hilft bei der Autovervollständigung und anderen Aufgaben. Warum also nicht? resethat wenig mit Ihrer Shell-Umgebung zu tun, sondern setzt lediglich das Terminal zurück und hilft nur bei Druckproblemen.
4ae1e1

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.