我一直在尝试从 git 源安装libcurl。但是,当我 cd 进入存储库并运行时,./configure
我不断收到此错误:
[*****@****** bagder-curl-f0d611d]$ ./configure
-bash: ./configure: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我做了一些谷歌搜索。我在工作,我不是系统管理员,这有什么关系吗?我宁愿不与我们的系统管理员讨论这个问题,因为他是一个相当不愉快的人,通常不愿意提供帮助。
似乎确实有一个配置文件:
$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
Run Code Online (Sandbox Code Playgroud)
Jor*_*tro 11
您在此处的权限无关紧要,您收到该错误的原因是它找不到该configure
文件。
在这种情况下,curl 包含一个buildconf
文件来为您准备。我通过执行以下步骤成功编译了它。
首先,我确保我拥有构建 curl 所需的一切:
sudo apt-get build-dep curl
Run Code Online (Sandbox Code Playgroud)
然后我运行以下命令来构建它:
buildconf
./configure
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
这会将库放在 /usr/local/
查看源代码,libcurl 似乎可以同时使用 cmake 和 autotools。Cmake 最简单:
cmake .
Run Code Online (Sandbox Code Playgroud)
创建构建文件,然后
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
就像你习惯的那样。
作为参考,以下是如何使用自动工具。git checkout 包含configure
脚本的情况并不常见。您应该期待一个autogen.sh
脚本(它会为您创建并调用configure
),或者如果失败:
autoreconf --install
./configure
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
这两种方法似乎都适用于 libcurl。