Si estamos usando cURL en Windows con Cygwin y queremos usar la opción --compressed, nos vamos a encontrar con el error:
curl: option --compressed: the installed libcurl version doesn't support this
Parece una situación grave, pero no, una opción que tenemos es simplemente usar Linux ;). En cualquier otro caso, ya que por algo estamos usando Windows, el error radica en que olvidamos hacer algo. Al usar Cygwin podemos instalar los paquetes de manera selectiva o todos por igual, curl va a funcionar de manera limitada incluso cuando no se encuentre instalado con Cygwin, entonces la solución es sencilla, lo instalamos.
Instalar cURL con el instalador de Cygwin
No importa si ya tenemos algunos paquetes, volvemos a iniciar el instalador como si fuera la primera vez. En "View" seleccionamos la opción "Full" y en "Search" escribimos los paquetes que necesitamos. En esta ocasión buscamos los siguientes paquetes:
- curl
- curl-debuginfo
- libcurl4
- libcurl-devel
- libcurl-doc
En la columna "New" dejamos "Keep" para los que ya se encuentran instalados y seleccionamos la última versión disponible para los que no lo están. Hacemos clic en "Siguiente" a todo y simplemente cerramos y abrimos la terminal de Cygwin.
Comprobación de cURL
Para comprobar que tenga soporte para la opción --compressed
usamos el siguiente comando:
curl --version
La salida debe ser similar a esta:
$ curl --version curl 7.75.0 (x86_64-pc-cygwin) libcurl/7.75.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.9 zstd/1.4.9 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.0.4) libssh2/1.7.0 nghttp2/1.37.0 Release-Date: 2021-02-03 Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp Features: alt-svc AsynchDNS brotli Debug GSS-API HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz Metalink NTLM NTLM_WB PSL SPNEGO SSL TLS-SRP TrackMemory UnixSockets zstd
Verificamos que se encuentre "brotli", que es el sistema de compresión usado actualmente por los navegadores web modernos.