10

I've been trying to install libcurl from the git source. However when I cd into the repository and run ./configure I keep getting this error:

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

I did some googling. I'm at work and I'm not a system administrator, does that have anything to do with it? I'd rather not talk to our system administrator about this, as he is a rather unpleasant person who is typically not inclined to help.

There does seem to be a configure file:

$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

3 Answers 3

11

Your permissions here don't matter, the reason you are getting that error is that it can't find the configure file.

In this case curl includes a buildconf file to prepare this for you. I successfully compiled it by doing the following steps.

First I make sure I have everything I need to build curl:

sudo apt-get build-dep curl

And then I run the following commands to build it:

buildconf
./configure
make
sudo make install 

This will put the library in /usr/local/

1
  • 6
    shouldn't it be ./buildconf ? Apr 18, 2019 at 12:17
6

Looking at the sources, it seems like libcurl can use both cmake and autotools. Cmake is easiest:

cmake .

to create the build files, then

make
sudo make install

like you're used to.

For reference, here's how to use autotools. It is unusual for a git checkout to contain the configure script. You should expect an autogen.sh script (which creates and calls configure for you), or, failing that:

autoreconf --install
./configure
make
sudo make install

Both ways seem to work for libcurl.

1

If you're on Ubuntu 13.04 you might need to

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

so curl finds its way.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .