Como construo libcurl a partir do código-fonte?

8

Eu tenho tentado instalar o libcurl a partir da fonte git. No entanto, quando eu CD no repositório e executo ./configure, continuo recebendo este erro:

[*****@****** bagder-curl-f0d611d]$ ./configure
-bash: ./configure: No such file or directory

Eu pesquisei no Google. Estou no trabalho e não sou administrador do sistema, isso tem algo a ver com isso? Prefiro não conversar com o administrador do sistema sobre isso, pois ele é uma pessoa bastante desagradável que normalmente não está inclinado a ajudar.

Parece haver um arquivo de configuração:

$ls
acinclude.m4   CMakeLists.txt     GIT-INFO        MacOSX-Framework     mkinstalldirs  tests
Android.mk     configure.ac       include         Makefile             packages       TODO-RELEASE
buildconf      COPYING            install-sh      Makefile.am          perl           vc6curl.dsw
buildconf.bat  CTestConfig.cmake  lib             Makefile.dist        README         winbuild
CHANGES        curl-config.in     libcurl.pc.in   Makefile.msvc.names  RELEASE-NOTES
CHANGES.0      curl-style.el      log2changes.pl  maketgz              sample.emacs
CMake          docs               m4              missing              src
Mike Flynn
fonte

Respostas:

11

Suas permissões aqui não importam, o motivo pelo qual você está recebendo esse erro é que ele não consegue encontrar o configurearquivo.

Nesse caso, o curl inclui um buildconfarquivo para preparar isso para você. Eu o compilei com êxito executando as seguintes etapas.

Primeiro, verifique se tenho tudo o que preciso para criar cachos:

sudo apt-get build-dep curl

E então eu executo os seguintes comandos para compilá-lo:

buildconf
./configure
make
sudo make install 

Isso colocará a biblioteca em / usr / local /

Jorge Castro
fonte
3
não deveria ser ./buildconf?
precisa saber é o seguinte
2

Olhando as fontes, parece que o libcurl pode usar o cmake e o autotools. Cmake é mais fácil:

cmake .

para criar os arquivos de construção,

make
sudo make install

como você está acostumado.

Para referência, veja como usar as ferramentas automáticas. É incomum que um check-out do git contenha o configurescript. Você deve esperar um autogen.shscript (que cria e chama configurepor você) ou, na sua falta:

autoreconf --install
./configure
make
sudo make install

Ambas as formas parecem funcionar para libcurl.

Timo Kluck
fonte
1

Se você estiver no Ubuntu 13.04, pode ser necessário

ln -s /usr/local/lib/libcurl.so /usr/lib/libcurl.so

então o enrolamento encontra o seu caminho.

nwgat
fonte