curl.h no such file or directory

C++Curl

C++ Problem Overview


I installed curl this command (i use Ubuntu):

sudo apt-get install curl

When I test simple program using g++ test.cpp

#include <stdio.h>
#include <curl/curl.h>
 
int main(void)
{
  CURL *curl;
  CURLcode res;
 
  curl = curl_easy_init();
  if(curl) {
    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
 
    /* Perform the request, res will get the return code */ 
    res = curl_easy_perform(curl);
    /* Check for errors */ 
    if(res != CURLE_OK)
      fprintf(stderr, "curl_easy_perform() failed: %s\n",
              curl_easy_strerror(res));
 
    /* always cleanup */ 
    curl_easy_cleanup(curl);
  }
  return 0;
}

g++ shows me:

fatal error: curl/curl.h: No such file or directory
compilation terminated.

Can anyone help me?

C++ Solutions


Solution 1 - C++

sudo apt-get install curl-devel

sudo apt-get install libcurl-dev

(will install the default alternative)

OR

sudo apt-get install libcurl4-openssl-dev

(the OpenSSL variant)

OR

sudo apt-get install libcurl4-gnutls-dev

(the gnutls variant)

Solution 2 - C++

To those who use centos and have stumbled upon this post :

 $ yum install curl-devel

and when compiling your program example.cpp, link to the curl library:

 $ g++ example.cpp -lcurl -o example

"-o example" creates the executable example instead of the default a.out.

The next line runs example:

 $ ./example

Solution 3 - C++

Instead of downloading curl, down libcurl.

curl is just the application, libcurl is what you need for your C++ program

http://packages.ubuntu.com/quantal/curl

Solution 4 - C++

yes please download curl-devel as instructed above. also don't forget to link to lib curl:

-L/path/of/curl/lib/libcurl.a (g++)

cheers

Solution 5 - C++

If after the installation curl-dev luarocks does not see the headers:

find /usr -name 'curl.h'
Example: /usr/include/x86_64-linux-gnu/curl/curl.h

luarocks install lua-cURL CURL_INCDIR=/usr/include/x86_64-linux-gnu/

Solution 6 - C++

For those of view who stumbled on this post after a Google of "R curl curl.h no such file or directory" (first link), who are on Windows, and want to install curl in R, the solution is pretty simple and fast.

  • Launch Rtools Bash from the Rtools folder in the Windows all app menu.
  • Throw pacman -Syuv in the command line to make sure you're up-to-date.
  • pacman -S mingw-w64-x86_64-curl fixes the problem. You can now go back to R and install curl without any issues. No more curl.h missing errors.

Solution 7 - C++

encountered during building git in Centos 8 Stream.

dnf search libcurl

sudo yum install libcurl

sudo yum install libcurl-devel

Now, everything ran fine, and git installed.

Solution 8 - C++

i am running Ubuntu 21.10 and still cant get Curl.h to be recognized even after everything said above. I'm going to just grab it from someones Repo and use it alone. i will keep everyone updated

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionuser1518451View Question on Stackoverflow
Solution 1 - C++n. 1.8e9-where's-my-share m.View Answer on Stackoverflow
Solution 2 - C++mouseratView Answer on Stackoverflow
Solution 3 - C++roymustang86View Answer on Stackoverflow
Solution 4 - C++Moataz ElmasryView Answer on Stackoverflow
Solution 5 - C++bujnosView Answer on Stackoverflow
Solution 6 - C++tchevrierView Answer on Stackoverflow
Solution 7 - C++Paul BradburyView Answer on Stackoverflow
Solution 8 - C++LnxboxView Answer on Stackoverflow