¿Es posible obtener solo el camino? En mi caso, quiero usar clang de llvm y después de "brew install llvm" clang sigue siendo de Apple, pero uno de los binarios de llvm es lo que necesito.
Okutane
1
Por cierto, también brew doctorpodría ayudarlo a comprender los problemas.
jakub.g
3
@okutane Tendrías que armar el camino tú mismo. Como un ejemplo crudo, usted podría hacerecho "$(brew --cellar llvm)/$(brew list --versions llvm | tr ' ' '\n' | tail -1)/bin/clang"
nburr
Dependiendo de sus necesidades específicas, brew --prefix hping(de la respuesta de @ capripot) puede hacer el truco.
Waldyrious
24
/ usr / local / Cellar es la ubicación predeterminada en OS X. Verá subdirectorios allí para todas sus fórmulas instaladas ...
Para averiguar dónde está instalada su fórmula, haga
brew --prefix hping
También puede volver a vincular su hpingbinario haciendobrew unlink hping && brew link hping
Además, quizás tu $PATHno esté bien definido. ¿La lista dada por echo $PATHcontiene el resultado dado por echo $(brew --prefix)'/bin:'$(brew --prefix)'/sbin'? Este camino debe estar hacia el comienzo de la lista para tener prioridad sobre los binarios del sistema, seguramente antes /usr/bin.
Para hacerlo, puede agregar esto al final de su ~/.zshrco ~/.bashrc:
Alternativamente, brew --prefix hpingpuede ser útil también.
Waldyrious
1
hping requiere privilegios de root para ejecutarse.
Probablemente necesite agregar / usr / local / sbin a su RUTA.
Cuando corrí brew doctor:
Warning: Homebrew's sbin was not found in your PATH but you have installed
formulae that put executables in /usr/local/sbin.
Consider setting the PATH for example like so
echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile
Instalé algunos paquetes a través de brew. Pero no puedo encontrar dónde están.
Parece que homebrew requiere que uno sea explícito con las cosas. Afortunadamente, un poco de escape brew --prefixpuede hacer que esto sea obvio, para aquellos que necesitan encontrar la ruta para la utilidad pkg-config, por ejemplo
(Excepto que esto no va a funcionar de todos modos, porque parece que hping no viene con hping.pc .. aunque, en el caso de que los mantenedores de paquetes coloquen archivos .pc, este truco puede ser útil).
Podría encontrar cualquier opción de CLI directa brewpara obtener la ruta completa a la versión instalada actualmente de una fórmula, pero esto funcionaría siempre que esté usando bash:
/usr/local/Cellar/hping/3.20051105/sbin/hping
daemonize
, esta respuesta me ayudó a entender que Daemonize está instalado en/usr/local/sbin
que no estaba en la RUTARespuestas:
Use lo siguiente para mostrar la ruta de instalación de un paquete:
Salida de ejemplo:
fuente
brew doctor
podría ayudarlo a comprender los problemas.echo "$(brew --cellar llvm)/$(brew list --versions llvm | tr ' ' '\n' | tail -1)/bin/clang"
brew --prefix hping
(de la respuesta de @ capripot) puede hacer el truco./ usr / local / Cellar es la ubicación predeterminada en OS X. Verá subdirectorios allí para todas sus fórmulas instaladas ...
fuente
Para averiguar dónde está instalada su fórmula, haga
brew --prefix hping
También puede volver a vincular su
hping
binario haciendobrew unlink hping && brew link hping
Además, quizás tu
$PATH
no esté bien definido. ¿La lista dada porecho $PATH
contiene el resultado dado porecho $(brew --prefix)'/bin:'$(brew --prefix)'/sbin'
? Este camino debe estar hacia el comienzo de la lista para tener prioridad sobre los binarios del sistema, seguramente antes/usr/bin
.Para hacerlo, puede agregar esto al final de su
~/.zshrc
o~/.bashrc
:Como resultado, después de abrir una nueva terminal o hacerlo
source ~/.zshrc
, podrá repetir su ruta correcta como:fuente
brew --prefix <command>
fue exactamente lo que necesitaba.Normalmente,
homebrew
instala paquetes en/usr/local/bin
. Por lo tanto, debe verificar que su RUTA contenga ese directorio, así:Además, intenta correr
para asegurarse de que su configuración sea correcta. Si
/usr/local/bin
no está en su RUTA, debe editar~/.profile
y agregar una línea como esta:Luego, inicie una nueva Terminal (para volver a leer su perfil de inicio de sesión) e intente nuevamente.
Si todo eso falla, debe instalarse en otro lugar. Puede buscarlo ejecutando un comando como este:
fuente
/usr/local/Cellar
como @PapaStanley señala.ls -ld /usr/local/bin
parece un directorio normal?Prueba este comando
p.ej
fuente
brew --prefix hping
puede ser útil también.hping requiere privilegios de root para ejecutarse.
Probablemente necesite agregar / usr / local / sbin a su RUTA.
Cuando corrí brew doctor:
fuente
Para encontrar su directorio de instalación base para Homebrew, use uno de los siguientes comandos:
Este último devuelve específicamente la ruta de su
Cellar
carpeta.fuente
Recomiendo agregar la siguiente línea a su
~/.bash_profile
(o el archivo de configuración equivalente si está utilizando un shell diferente):fuente
Parece que homebrew requiere que uno sea explícito con las cosas. Afortunadamente, un poco de escape
brew --prefix
puede hacer que esto sea obvio, para aquellos que necesitan encontrar la ruta para la utilidad pkg-config, por ejemplo(Excepto que esto no va a funcionar de todos modos, porque parece que hping no viene con hping.pc .. aunque, en el caso de que los mantenedores de paquetes coloquen archivos .pc, este truco puede ser útil).
fuente
Si alguien busca la ruta real del paquete:
En mi caso
brew --cellar opencv3
da/usr/local/Cellar/opencv
Pero
find /usr/local/Cellar/ -type d -name "*opencv*" -maxdepth 1
da/usr/local/Cellar//opencv3
(que es en/usr/local/Cellar/opencv3
realidad)Encabezados:
/usr/local/Cellar/opencv3/3.4.1_1/include/
Libs:
/usr/local/Cellar/opencv3/3.4.1_1/lib/
fuente
Podría encontrar cualquier opción de CLI directa
brew
para obtener la ruta completa a la versión instalada actualmente de una fórmula, pero esto funcionaría siempre que esté usando bash:fuente