threads / discuss / 55179

[GSOC] fatal error: curl/curl.h: No such file or directory

Subject: [GSOC] fatal error: curl/curl.h: No such file or directory

## tl;dr

3 messages between Feb 20, 2021 and Feb 20, 2021.

replies: 2people: 3as markdown or json

Divyansh Garg· Feb 20, 2021, 13:57 UTC · lore

Hello, I am trying to build the source code on my system (Ubuntu 20.04). After cloning the repo, when I proceed with the command: make, I get the following error. I tried installing curl and searched the internet but couldn't get a fix. Please advise, how can I solve this problem.

divyansh:~/gsoc/git$ make
make: curl-config: Command not found
    * new prefix flags
    CC attr.o
    CC config.o
    CC exec-cmd.o
    CC gettext.o
    AR libgit.a
    LINK git-daemon
    LINK git-http-backend
    LINK git-imap-send
    LINK git-sh-i18n--envsubst
    LINK git-shell
    CC http.o
In file included from http.c:2:
http.h:6:10: fatal error: curl/curl.h: No such file or directory
    6 | #include <curl/curl.h>
      |          ^~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:2422: http.o] Error 1
Divyansh Garg
Torsten Bögershausen· Feb 20, 2021, 14:11 UTC · re: Divyansh Garg · lore

Re: [GSOC] fatal error: curl/curl.h: No such file or directory

On Sat, Feb 20, 2021 at 07:27:32PM +0530, Divyansh Garg wrote:
Show 6 quoted lines
> Hello,
> I am trying to build the source code on my system (Ubuntu 20.04).
> After cloning the repo, when I proceed with the command: make, I get
> the following error.
> I tried installing curl and searched the internet but couldn't get a fix.
> Please advise, how can I solve this problem.

Welcome to the Git community. You need to install the development package of some packages, which come with header files (and not only the libs).

Being a lazy person, I collected all possible package names in a setupscript,
looking similar to this:
  APTGET="sudo apt-get install"
 type curl-config || $APTGET libcurl4-openssl-dev || $APTGET libcurl-devel
 test -r /usr/include/expat.h || $APTGET libexpat1-dev || $APTGET expat-devel || $APTGET libexpat-devel
 test -r /usr/include/ssl.h || test -r /usr/include/openssl/ssl.h || $APTGET openssl-devel || $APTGET  libssl-dev
 test -r /usr/include/zlib.h || $APTGET zlib1g-dev
 type msgfmt || $APTGET gettext

In other words, sudo apt-get install libcurl-devel could help. And you probably need to install more dev/devel packages, unfortunatly different Linux distros use different names for (from a user point of view) the same thing. So I can't tell you out of my head, what Ubuntu needs, but there is hopefully a start point.

[snip]
SZEDER Gábor· Feb 20, 2021, 19:07 UTC · re: Divyansh Garg · lore

Re: [GSOC] fatal error: curl/curl.h: No such file or directory

On Sat, Feb 20, 2021 at 07:27:32PM +0530, Divyansh Garg wrote:
Show 27 quoted lines
> Hello,
> I am trying to build the source code on my system (Ubuntu 20.04).
> After cloning the repo, when I proceed with the command: make, I get
> the following error.
> I tried installing curl and searched the internet but couldn't get a fix.
> Please advise, how can I solve this problem.
> 
> divyansh:~/gsoc/git$ make
> make: curl-config: Command not found
>     * new prefix flags
>     CC attr.o
>     CC config.o
>     CC exec-cmd.o
>     CC gettext.o
>     AR libgit.a
>     LINK git-daemon
>     LINK git-http-backend
>     LINK git-imap-send
>     LINK git-sh-i18n--envsubst
>     LINK git-shell
>     CC http.o
> In file included from http.c:2:
> http.h:6:10: fatal error: curl/curl.h: No such file or directory
>     6 | #include <curl/curl.h>
>       |          ^~~~~~~~~~~~~
> compilation terminated.
> make: *** [Makefile:2422: http.o] Error 1

As Torsten said you have to install not only a couple of libraries but also the related '-dev' package containing includes and static libraries.

In our CI jobs using Ubuntu we install the following packages by default (see 'ci/install-dependencies.sh'):

UBUNTU_COMMON_PKGS="make libssl-dev libcurl4-openssl-dev libexpat-dev
 tcl tk gettext zlib1g-dev perl-modules liberror-perl libauthen-sasl-perl
 libemail-valid-perl libio-socket-ssl-perl libnet-smtp-ssl-perl"

← back to recent threads