ruby on rails - No se puede encontrar libcurl o curl/curl.h(RuntimeError)
ruby-on-rails gem (6)
Estoy tratando de instalar Curb 0.8.0 en una computadora con Windows, pero parece que no puedo llegar a ninguna parte. He estado probando cada sitio web con 3 páginas de profundidad en mi búsqueda de Google. Por favor, cualquiera tiene una idea de cómo puedo instalar esta única cosa. He descargado Curl y lo he extraído a C: / curl. Lo he agregado a mi ruta y estoy ejecutando el comando:
gem install curb -- --with-curl-lib=C:/curl/bin --with-curl-include=C:/curl/include
Pero no funciona. Sigo recibiendo el mismo error. ¿Alguna sugerencia?
Dichos archivos de encabezado suelen estar empaquetados en un paquete xxx-dev
. En este caso libcurl-dev
.
Por lo general, también ofrecen paquetes "virtuales" que se resuelven a la última versión de un paquete. En caso de que haya múltiples implementaciones disponibles, aparecerá una lista y le pedirá que elija la que desea, de lo contrario, continuará y seleccionará la más reciente.
vagrant@my_box $ sudo apt-get install libcurl-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libcurl-dev is a virtual package provided by:
libcurl4-openssl-dev 7.22.0-3ubuntu4.17
libcurl4-nss-dev 7.22.0-3ubuntu4.17
libcurl4-gnutls-dev 7.22.0-3ubuntu4.17
You should explicitly select one to install.
E: Package ''libcurl-dev'' has no installation candidate
vagrant@my_box $ # I pick gnu implementation version 4.
vagrant@my_box $ sudo apt-get install libcurl4-gnutls-dev
...
vagrant@my_box $
Ver todas las versiones:
$ aptitude versions libcurl
Package libcurl-ocaml:
p 0.5.3-2build3 precise 500
Package libcurl-ocaml-dev:
p 0.5.3-2build3 precise 500
Package libcurl-ocaml-dev:i386:
p 0.5.3-2build3 precise 500
Package libcurl-ocaml:i386:
p 0.5.3-2build3 precise 500
Package libcurl3:
p 7.22.0-3ubuntu4 precise 500
i 7.22.0-3ubuntu4.15 100
p 7.22.0-3ubuntu4.17 precise-securi 500
......
Package libcurl3-gnutls:i386:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
......
Package libcurl4-gnutls-dev:
p 7.22.0-3ubuntu4 precise 500
i 7.22.0-3ubuntu4.17 precise-securi 500
Package libcurl4-gnutls-dev:i386:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
......
$ # see only curl4 related stuff
$ aptitude versions libcurl4
Package libcurl4-gnutls-dev:
p 7.22.0-3ubuntu4 precise 500
i 7.22.0-3ubuntu4.17 precise-securi 500
Package libcurl4-gnutls-dev:i386:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
Package libcurl4-nss-dev:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
Package libcurl4-nss-dev:i386:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
Package libcurl4-openssl-dev:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
Package libcurl4-openssl-dev:i386:
p 7.22.0-3ubuntu4 precise 500
p 7.22.0-3ubuntu4.17 precise-securi 500
$
$
Si no se nombra a dev lib, puede hacer una búsqueda ciega como ( grep
s para paquetes virtuales):
$ aptitude search curl | grep dev | grep ^v
v libcurl-dev -
v libcurl-dev:i386 -
v libcurl-ocaml-dev-g55y9 -
v libcurl-ocaml-dev-owsj4:i386 -
v libcurl-ssl-dev -
v libcurl-ssl-dev:i386 -
v libcurl3-dev -
v libcurl3-dev:i386 -
v libcurl3-gnutls-dev -
v libcurl3-gnutls-dev:i386 -
v libcurl3-nss-dev -
v libcurl3-nss-dev:i386 -
v libcurl3-openssl-dev -
v libcurl3-openssl-dev:i386 -
v libcurl4-dev -
v libcurl4-dev:i386 -
v libghc-curl-dev-1.3.7-134ce:i38 -
v libghc-curl-dev-1.3.7-26a38 -
v libghc-download-curl-dev-0.1.3. -
v libghc-download-curl-dev-0.1.3. -
v libghc-hxt-curl-dev-9.1.1-66e48 -
v libghc-hxt-curl-dev-9.1.1-66e48 -
$
La joya de curb
requiere libcurl
, algo que está relacionado con, pero diferente de curl
. Es la biblioteca con la que se construye el curl
. Ese archivo faltante es parte de la versión de desarrollo de cURL.
Para Amazon Linux (quizás también centos / redhat / fedora) haga esto:
sudo yum install libcurl libcurl-devel
Si estás en alpine:
apk add --update curl-dev
Si estás en ubuntu:
sudo apt-get install libcurl3 libcurl3-gnutls libcurl4-openssl-dev
escribe esto para deshacerte del error curl / curl.h
sudo apt-get install libcurl3 libcurl3-gnutls libcurl4-openssl-dev
después de esto obtendrás un error TDS gratis si no lo has instalado previamente
Prueba correr
sudo apt-get install freetds-dev
y después de esto
gem install tiny_tds