如何从源代码构建 libcurl?

如何从源代码构建 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

答案1

此处您的权限并不重要,您收到该错误的原因是找不到该configure文件。

在这种情况下,curl 包含一个buildconf文件来为您准备。我通过执行以下步骤成功编译了它。

首先我确保我拥有构建 curl 所需的一切:

sudo apt-get build-dep curl

然后我运行以下命令来构建它:

buildconf
./configure
make
sudo make install 

这会将库放入 /usr/local/

答案2

查看源代码,似乎 libcurl 可以同时使用 cmake 和 autotools。Cmake 最简单:

cmake .

创建构建文件,然后

make
sudo make install

就像你习惯的那样。

作为参考,以下是使用 autotools 的方法。git checkout 包含脚本的情况并不常见configure。您应该期望有一个autogen.sh脚本(它会configure为您创建和调用),或者,如果失败了:

autoreconf --install
./configure
make
sudo make install

这两种方法似乎都适用于 libcurl。

答案3

如果你使用的是 Ubuntu 13.04,你可能需要

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

因此 curl 找到了自己的出路。

相关内容