macos - usr - mac bash operation not permitted
El instalador de cmake para Mac no puede crear enlaces simbólicos/usr/bin (10)
Abrir la carpeta de aplicaciones en una terminal
cd /
cd Applications/
entonces haciendo:
sudo bash
CMake.app/Contents/bin/cmake-gui
Luego ejecute desde la GUI de CMake: "Herramientas-> Instalar para uso de la línea de comandos"
funciona bien para mi
Intente instalar CMake cmake-2.8.12.2-Darwin64-universal.dmg en OS X 10.9.3 Eliminé la versión anterior de la carpeta de aplicaciones y eliminé ccmake, cmake, cmake-gui, etc. en usr / bin. Pero obtenga "Error al crear la instalación de enlace simbólico puede estar incompleto: / usr / bin / cpack" y otros mensajes de error.
Por favor, hágame saber si hay alguna sugerencia o pregunta.
Gracias por un tiempo precioso en mi pregunta.
Como se dijo anteriormente, inicie la GUI en modo sudo. Abra una terminal y escriba:
sudo /Applications/CMake.app/Contents/MacOS/CMake
luego, en la GUI, vaya al menú Herramientas e Instalar para el uso de la línea de comando y presione el botón Instalar enlaces de línea de comando . La terminal mostrará:
ln -s [/Applications/CMake.app/Contents/bin/ccmake] [/usr/bin/ccmake]
ln -s [/Applications/CMake.app/Contents/bin/cmake] [/usr/bin/cmake]
ln -s [/Applications/CMake.app/Contents/bin/cmake-gui] [/usr/bin/cmake-gui]
ln -s [/Applications/CMake.app/Contents/bin/cmakexbuild] [/usr/bin/cmakexbuild]
ln -s [/Applications/CMake.app/Contents/bin/cpack] [/usr/bin/cpack]
ln -s [/Applications/CMake.app/Contents/bin/ctest] [/usr/bin/ctest]
y aquí estás. Probado con cmake-3.1.0-rc2.
En CMake 3.3.0 ya no existe la opción Instalar para línea de comandos. A continuación es cómo lo hice.
He descargado el archivo dmg y lo he copiado en la carpeta de aplicaciones. Pero tuve que agregar la ruta al binario a la variable de entorno PATH. Este es el paso por paso completo.
Descargue CMake dmg del sitio web oficial ( http://www.cmake.org );
Abra el archivo dmg. Copie el ejecutable de CMake en la carpeta Aplicaciones;
Abra una terminal y escriba "cd ~" (para ir a su carpeta de inicio);
Abra el archivo .bash_profile (si no existe, créelo con "touch .bash_profile");
Dentro del archivo .bash_profile, inserte la siguiente línea:
export PATH = "/ Aplicaciones / CMake.app / Contents / bin /: $ PATH"
(Esto agregará el binario de CMake a tu variable PATH)
Guarde el archivo .bash_profile y salga;
De vuelta a la terminal, escriba "source .bash_profile", para actualizar la variable PATH.
¡Listo para ir! Intenta compilar de nuevo :)
La parte buena de agregarlo a PATH es que funcionará cada vez que reinicie su computadora.
En las últimas versiones, el procedimiento de instalación es simple, en el terminal simplemente escriba:
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install
Y los enlaces suaves se generarán automáticamente.
Probado con la cmake version 3.3.2
y la cmake version 3.8.0
Si teme que pueda tener enlaces restantes de una versión anterior, puede eliminarlos antes de instalar la nueva versión:
cd /usr/bin; sudo rm ccmake cmake cmake-gui cmakexbuild cpack ctest
De lo contrario, para versiones anteriores, debe iniciar la aplicación con una cuenta con privilegios de administrador para que la instalación funcione. es decir:
sudo /Applications/CMake.app/Contents/MacOS/CMake
Esto también me pasa a mí de vez en cuando.
El problema es básicamente que los enlaces simbólicos de la instalación anterior no se limpian al eliminar CMake de Aplicaciones y ahora el instalador tiene problemas para actualizarlos a la nueva versión.
La solución más fácil aquí es eliminar manualmente esos enlaces de /usr/bin
y volver a ejecutar el instalador. IIRC es al menos cmake
, ccmake
, cmake-gui
, cpack
y ctest
que deben eliminarse. La mejor manera es hacer un ls -l /usr/bin
desde la consola y grep
para todos los enlaces que apuntan al viejo directorio de instalación de CMake.
Hay una opción en
Cmake GUI->Tools->How to install for command line use
que muestra opciones
One may add CMake to the PATH:
PATH="/Applications/CMake.app/Contents/bin":"$PATH"
Or, to install symlinks to ''/usr/local/bin'', run:
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install
Or, to install symlinks to another directory, run:
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install=/path/to/bin
En qué primera opción funcionó para mí.
Intente usar sudo start cmake-gui, y elija la carpeta en / usr / local / bin en lugar de la predeterminada / usr / bin cuando instale la línea de comando que tuve éxito
Parece que CMake 3.0 ya no viene con un instalador. Entonces encontré un problema similar. Al igual que @ComicSansMS, dijo que primero debe eliminar los enlaces simbólicos utilizando sudo rm
. A continuación, puede ejecutar la interfaz sudo /Applications/CMake.app/Contents/MacOS/CMake
con sudo /Applications/CMake.app/Contents/MacOS/CMake
y usar las herramientas -> Instalar para el elemento de menú Usar línea de comando.
De alguna nueva versión 3.x, debes usar este comando para crear enlaces simbólicos:
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install
La opción de nota en el menú ahora solo da esta instrucción y otras opciones posibles.
Si desea instalar en OSX 10.11, debe instalarlo en / usr / local / bin (¡solo / usr / bin no funcionará!). No pude lograr que funcionara con el programa que tenía instalado (3.2.1). Después de descargar la última versión (3.6.1) y usar esta línea de comandos, funcionó. No es necesario ir a la interfaz gráfica de usuario y hacer clic en "instalar herramientas de línea de comandos", simplemente lo hace al instante.
nota: también podría funcionar sin especificar / usr / local / bin en cmake-3.6.1 - no lo he probado.
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install=/usr/local/bin
muy simple, instale el archivo .dmg y luego ábralo,
herramientas-> Cómo instalar para el uso de la línea de Comando
puedes encontrar:
Uno puede agregar CMake a la RUTA:
PATH = "/ Applications / CMake.app / Contents / bin": "$ PATH"
O bien, para instalar enlaces simbólicos a ''/ usr / local / bin'', ejecute:
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install
O, para instalar enlaces simbólicos a otro directorio, ejecute:
sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install = / ruta / a / bin