curl install libcurl meteor

curl:(48) Se pasó una opción desconocida a libcurl



install meteor (12)

Esto es realmente frustrante. Sigo recibiendo este error cuando intento ejecutar un comando curl estándar:

curl --url https://install.meteor.com | sh curl: (48) An unknown option was passed in to libcurl

¿Alguien sabe como arreglarlo?


Acabo de encontrarme con este problema. Un poco de investigación superficial me llevó a esta entrada de rastreador de errores , pero la actualización no funcionó. Sin embargo, recientemente construí la versión más nueva de libcurl desde la fuente, así que pensé que debía ser algo que ver con la estructura del directorio que se mezcla. Estoy seguro de que probablemente no estés exactamente en la misma situación, pero tal vez Mountain Lion haya introducido un error lo suficientemente similar a lo que los pasos que tomé para solucionar el problema podrían ayudarte.

En primer lugar, ejecute which curl para determinar desde dónde se llama el binario. Luego, asegúrate de que la ubicación exista realmente ejecutando locate -r /curl$ . Si no es así (este fue el problema en mi caso), intente ejecutar curl utilizando todas las rutas completas que proporciona la locate , ignorando las que obviamente son superfluas como python-pycurl .

Una vez que haya encontrado uno que funcione, puede crear un enlace simbólico desde el which encuentra o verificar si este último permite que el shell encuentre el correcto por sí mismo. Para mí, la solución fue tan simple como eliminar /usr/local/bin/curl , lo which curl provocó which curl respondiera correctamente con /usr/bin/curl y la curl volviera al funcionamiento normal.


Acabo de tener este problema exacto con Alpine Linux.

La solución era instalar curl-dev además de curl.


En Ubuntu 16.04 LTS acabo de agregar / usr / local / lib a LD_LIBRARY_PATH en / etc / profile (LD_LIBRARY_PATH = / usr / local / lib: $ LD_LIBRARY_PATH; export LD_LIBRARY_PATH)


Este es el mismo error que estaba recibiendo después de instalar cURL desde la fuente en Ubuntu.

$ curl http://www.google.com curl: (48) An unknown option was passed in to libcurl

Mirar la versión de cURL mostró que curl se había actualizado pero estaba usando la versión antigua de libcurl:

$ curl --version curl 7.41.0 (x86_64-unknown-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3

Para resolver mi problema, copié libcurl.so y otros de la última carpeta de rizos que descargué y sobrescribí los que ya estaban en mi máquina.

cp /tmp/curl-7.41.0/lib/.libs/libcurl.so* /usr/local/lib/

Esto solucionó mi problema.

$ curl --version curl 7.41.0 (x86_64-unknown-linux-gnu) libcurl/7.41.0 OpenSSL/1.0.1 zlib/1.2.3.4 $ curl -I http://www.google.com HTTP/1.1 302 Found [...snip...]


Esto puede solucionarse reinstalando cURL en / usr / bin en lugar de / usr / local / bin, ya que Ubuntu 12.04 se comporta de forma extraña cuando instala en diferentes lugares

Además, esto puede ser una posible solución, pero tenga cuidado

ln -s /usr/bin/curl /usr/local/bin/curl

Esto significa que el binario en /usr/local/bin no es realmente el que el sistema está buscando o está desactualizado o no puede funcionar correctamente. Se requiere un enlace simbólico simple.

Para estar seguro, usted también podría

mv /usr/local/bin/curl /usr/local/bin/curl.bak

Antes de ln -s -ing finaliza la versión /usr/bin/curl .


Lo más probable es que tengas un curl más nuevo que use un libcurl más antiguo que no conozca una o más opciones que el rizo intenta usar.

curl -V mostrará esto y ldd [path to curl] le mostrará todos los usos de curl de bibliotecas compartidas.


Me enfrenté al mismo problema en cygwin , cuando construí manualmente curl para trabajar con https y todo funcionaba bien

hasta que un día actualicé el paquete curl ejecutando la configuración de cygwin y no actualicé el paquete libcurl4 , y comencé a recibir el mismo error.

He comprobado la información de la versión curl ejecutando:

$ curl -V curl 7.54.1 (i686-pc-cygwin) libcurl/7.52.1 OpenSSL/1.0.2j zlib/1.2.8 libidn2/2.0.2 libpsl/0.17.0 (+libidn2/0.11) libssh2/1.7.0 nghttp2/1.14.0 Release-Date: 2017-06-14 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp Features: Debug IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy Metalink PSL

Así que encontré que cygwin actualizó el paquete curl a 7.54.1 pero libcurl todavía estaba en 7.52.1

Así que desinstalé el paquete curl y libcurl y reinstalé, entonces todo estaba funcionando bien otra vez.

$ apt-cyg remove libcurl4 curl Removing libcurl4 Package libcurl4 removed Removing curl Package curl removed apt-cyg install curl libcurl4 Installing curl curl-7.54.1-1.tar.xz: OK Unpacking... Package curl requires the following packages, installing: cygwin libcurl4 libmetalink3 libopenssl100 zlib0 Package cygwin is already installed, skipping Installing libcurl4 libcurl4-7.54.1-1.tar.xz: OK Unpacking... Package libcurl4 requires the following packages, installing: ca-certificates cygwin libgcc1 libgssapi_krb5_2 libidn2_0 libnghttp2_14 libopenldap2_4_2 libopenssl100 libpsl5 libssh2_1 zlib0 Package ca-certificates is already installed, skipping Package cygwin is already installed, skipping Package libgcc1 is already installed, skipping Package libgssapi_krb5_2 is already installed, skipping Package libidn2_0 is already installed, skipping Package libnghttp2_14 is already installed, skipping Package libopenldap2_4_2 is already installed, skipping Package libopenssl100 is already installed, skipping Package libpsl5 is already installed, skipping Package libssh2_1 is already installed, skipping Package zlib0 is already installed, skipping Package libmetalink3 is already installed, skipping Package libopenssl100 is already installed, skipping Package zlib0 is already installed, skipping Package curl installed Package libcurl4 is already installed, skipping

Comprobé la información de la versión del rizo otra vez:

$ curl -V curl 7.54.1 (i686-pc-cygwin) libcurl/7.54.1 OpenSSL/1.0.2j zlib/1.2.8 libidn2/2.0.2 libpsl/0.17.0 (+libidn2/0.11) libssh2/1.7.0 nghttp2/1.14.0 Release-Date: 2017-06-14 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp Features: AsynchDNS Debug IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy Metalink PSL


Se metió en el mismo problema después de haber compilado desde el origen sobre una instalación empaquetada, lo resolvió con las marcas correctas con configure :

./configure --prefix=/usr --libdir=/usr/lib64

Sin la opción --libdir= , el mío estaba instalando una versión actualizada de libcurl en /usr/lib lugar de /usr/lib64 y el nuevo binario curl todavía estaba accediendo a las bibliotecas antiguas, lo que /usr/lib64 lugar a incompatibilidad.


Si acabas de construir tu rizo desde la fuente, ejecuta sudo ldconfig para arreglarlo.


Suelte el parámetro --url :

curl https://install.meteor.com | /bin/sh


También recibí este error, pero no estoy ejecutando Mountain Lion, y quería una forma simple y clara de hacerlo bien en cualquier sistema. (Nota # 1: resulta que estoy en un chroot de Ubuntu / LXDE en un viejo Chromebook ARMv7). (Nota # 2: Construí el lanzamiento nocturno desde la fuente. No tuve ningún problema con la instalación de rizos de la manera tradicional, es decir, sudo apt-get install curl .

Cuando verifiqué la versión curl -V mostró mi nueva versión de compilación nocturna para curl: 7.51.1-20161107, pero una versión antigua de libcurl: 7.22 ...

Tuve un presentimiento de que este era el problema. Intenté jugar con enlaces simbólicos, pero no me funcionó y solo estaba haciendo un lío, así que consulté la página de instalación oficial: https://curl.haxx.se/docs/install.html .

Para forzar la compilación de una biblioteca estática, deshabilite la creación de la biblioteca compartida ejecutando configure como:

./configure --disable-shared

Así que ejecuté lo siguiente desde mi directorio de fuentes curl:

  1. sudo make uninstall
  2. ./configure --disable-shared
  3. make
  4. sudo make install

Ahora la versión de rizo coincide con la versión de libcurl, y funciona.


Tuve un problema similar (en Ubuntu 12.04). Instalé manualmente curl en usr/local/bin y cualquier comando que escribí estaba dando curl:(48) An unknown option was passed in to libcurl

Lo arreglé desinstalando curl ( sudo make uninstall ) e instalándolo desde apt-get ( sudo apt-get install curl ), que colocaba automáticamente curl en usr/bin . Entonces funcionó!