Как мне собрать libcurl из исходного кода?

8

Я пытался установить libcurl из исходного кода git. Однако, когда я захожу в репозиторий и запускаю, ./configureя получаю эту ошибку:

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

Я немного погуглил. Я на работе и я не системный администратор, это как-то связано с этим? Я бы не стал говорить об этом с нашим системным администратором, поскольку он довольно неприятный человек, который обычно не склонен помогать.

Там, кажется, есть файл конфигурации:

$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
Майк Флинн
источник

Ответы:

11

Ваши разрешения здесь не имеют значения, причина, по которой вы получаете эту ошибку, в том, что она не может найти configureфайл.

В этом случае curl включает buildconfфайл, чтобы подготовить это для вас. Я успешно скомпилировал его, выполнив следующие шаги.

Сначала я должен убедиться, что у меня есть все, что мне нужно для сборки curl:

sudo apt-get build-dep curl

И затем я запускаю следующие команды для его сборки:

buildconf
./configure
make
sudo make install 

Это поместит библиотеку в / usr / local /

Хорхе Кастро
источник
3
не должно ли это быть ./buildconf?
Бухгалтер م
2

Глядя на источники, кажется, что libcurl может использовать как cmake, так и autotools. Cmake проще всего:

cmake .

чтобы создать файлы сборки, затем

make
sudo make install

как ты привык.

Для справки, вот как использовать автоинструменты. Для git checkout необычно содержать configureскрипт. Вы должны ожидать autogen.shсценарий (который создает и вызывает configureвас), или, если это не так:

autoreconf --install
./configure
make
sudo make install

Кажется, что оба способа работают на libcurl.

Тимо клак
источник
1

Если вы используете Ubuntu 13.04, вам может понадобиться

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

так завиток находит свой путь.

nwgat
источник