1 votos

Eliminar la copia duplicada de la aplicación de línea de comandos cURL y apuntar el sistema a una sola copia de la misma

Recientemente actualicé mi copia de cURL a través de Homebrew, que puso en /usr/local/Cellar/curl (v7.80.0). También tengo una versión más antigua (7.43.0), que se encuentra en /usr/bin/curl . Esta es la versión que ejecuto sin especificar la ruta (según which curl ). Estoy usando bash shell.

Parece que no es una buena idea eliminar simplemente /usr/bin/curl y colocar un enlace simbólico desde /usr/bin/curl a /usr/local/Cellar/curl . Entonces, ¿cómo le digo al sistema que utilice la versión más nueva ubicada en /usr/local/Cellar/curl ?

¿Necesito actualizar la configuración del entorno para asegurarme de que se encuentra curl? ¿Hay alguna forma de "desinstalar" la copia antigua de curl en /usr/bin/curl ?

2voto

Nimesh Neema Puntos 69

Ejecución de brew info curl muestra lo siguiente:

curl: stable 7.81.0 (bottled), HEAD [keg-only]
Get a file from an HTTP, HTTPS or FTP server
https://curl.se
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/curl.rb
License: curl
==> Dependencies
Build: pkg-config ✘
Required: brotli ✔, libidn2 ✘, libnghttp2 ✔, libssh2 ✘, openldap ✘, openssl@1.1 ✔, rtmpdump ✘, zstd ✔
==> Options
--HEAD
    Install HEAD version
==> Caveats
curl is keg-only, which means it was not symlinked into /usr/local,
because macOS already provides this software and installing another version in
parallel can cause all kinds of trouble.

==> Analytics
install: 171,673 (30 days), 491,229 (90 days), 1,633,820 (365 days)
install-on-request: 73,776 (30 days), 211,410 (90 days), 817,005 (365 days)
build-error: 76 (30 days)

El texto de la sección de Advertencias dice:

curl es sólo keg, lo que significa que no fue enlazado simbólicamente en /usr/local, porque MacOS ya proporciona este software e instalar otro versión en paralelo puede causar todo tipo de problemas.

Eso explica por qué no puede utilizar un reciente versión de cURL a pesar de haberlo instalado.

La versión más antigua a la que te refieres es la que viene preinstalada con MacOS.

No se puede simplemente borrar o templar con la versión de cURL instalada en el sistema ya que la misma está protegida por el subsistema de Protección de la Integridad del Sistema de MacOS. Puede obtener más información sobre la Protección de la Integridad del Sistema aquí:

Puede ejecutar la versión de cURL instalada en Homebrew a través de la ruta absoluta de la siguiente manera:

/usr/local/Cellar/curl/7.80.0/bin/curl

o bien, actualice su variable de entorno PATH ejecutando la siguiente línea de comandos para que la versión de cURL instalada en Homebrew tenga preferencia sobre la versión instalada en MacOS:

export PATH=/usr/local/Cellar/curl/7.81.0/bin:$PATH

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X