Suponga que instaló Imagemagick por
brew install imagemagick
pero no entra en tu RUTA. Por ejemplo, ejecuto sin éxito
compare
ya que imagemagick no está en PATH: -bash: compare: command not found
.
El comando ls -l /usr/local/bin/compare
da
ls: /usr/local/bin/compare: No such file or directory
Mi .bash_perfil
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
Haciendo eco $PATH
da
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/git/bin:/usr/texbin
que parece estar bien porque /usr/local/bin/
hay.
El comando brew --prefix
da /usr/local
tan bien.
El comando brew info imagemagick
da
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
que parece estar bien.
Ejecuto el comando brew link imagemagick
y obtengo
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
Esto parece ser extraño. ¿Cómo puedes resolver este problema?
Ejecuto el comando brew reinstall imagemagick
y obtengo
==> 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
así que algo está mal en el enlace simbólico.
¿Cómo se puede resolver el error sobre el enlace simbólico?
Una lista de cosas para probar, en orden (estoy escribiendo una respuesta en lugar de un comentario para un mejor formato). Ejecute hash -r
después de cada paso (suponiendo que esté en bash; hágalo rehash
en su lugar para zsh; o siempre puede abrir un nuevo shell).
Ejecute brew --prefix
y vea si la salida es /usr/local
. Si no, su brew
no está instalado en /usr/local
! Añadir $(brew --prefix)/bin
a usted $PATH
.
Ejecute brew info imagemagick
y asegúrese de que esté realmente instalado; tal vez tuvo un error durante la instalación y simplemente no se instaló correctamente.
Ejecutar brew link imagemagick
para enlace simbólico a /usr/local/bin
; tal vez los ejecutables no se vincularon correctamente (por alguna razón);
Ejecutar brew reinstall imagemagick
para reinstalar.
Si sigue sin funcionar, muéstranos la salida de brew list imagemagick
y veremos qué está mal.
convert
es un comando de ImageMagick, por lo que diría que es seguro simplemente hacer brew link --overwrite imagemagick
. Si desea ser demasiado cauteloso, brew link --overwrite --dry-run imagemagick
primero puede echar un vistazo a la lista de archivos sobrescritos, pero diría que no es necesario.convert
binario en /usr/local/bin
? ¿Podrías correr convert --version
para asegurarte de que en realidad es el ImageMagick convert
?hash -r
repite la lista de comandos conocidos por el shell. Ayuda con el autocompletado y esas cosas, entonces, ¿por qué no? reset
tiene poco que ver con su entorno de shell, simplemente reinicia la terminal y ayuda con nada más que problemas de impresión.compare
que me gustaría conservar, pero necesito el de ImageMagick convert
.compare
otro lugar, brew link imagemagick
y luego mover su compare
espalda a donde está. Tenga en cuenta que imagemagick (por mí, como sucede) se actualiza con bastante frecuencia, por lo que probablemente sea más conveniente si lo instala compare
en otro lugar antes del directorio bin de Homebrew, digamos ~/bin.xyzcompare
al otro compare
. Simple.la propuesta de jjrr en los comentarios donde también debes seguir las instrucciones
brew doctor
DW
sin ladera
sin ladera
type compare
regresa yls -l /usr/local/bin/compare
?sin ladera
compare
?4ae1e1
type -a compare
yls -l /usr/local/bin/compare
como patrix sugirió.4ae1e1
compare
simplemente no está allí.4ae1e1
jjrr
Fernando González Sánchez