curl.h такого файлу або каталогу немає


79

Я встановив curl цю команду (я використовую Ubuntu):

sudo apt-get install curl

Коли я тестую просту програму з використанням 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++ показує мені:

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

Хто-небудь може мені допомогти?

Відповіді:


147

sudo apt-get встановити curl-devel

sudo apt-get install libcurl-dev

(встановить альтернативу за замовчуванням)

АБО

sudo apt-get install libcurl4-openssl-dev

(варіант OpenSSL)

АБО

sudo apt-get install libcurl4-gnutls-dev

(варіант горіхів)


3
Чи має curl-develпакет ubuntu ? Віртуальне libcurl-devзабезпечується кількома іншими, наприклад libcurl4-openssl-dev, які працювали на мене.
DSM

Вибачте, я змішав мої дистрибутиви ... це повинен бути libcurl-dev, редагував відповідь
n. 'займенники' m.

2
Дякую, що використовую sudo apt-get install libcurl4-openssl-dev таg++ test.cpp -L/usr/include/curl/lib -lcurl
user1518451

Вам не потрібно -L/usr/include/curl/lib, мабуть, такого шляху немає.
п. 'займенники' m.

2
yum install libcurl-develмає бути те саме з іншим менеджером пакунків
Nachtgold

36

Тим, хто користується centos і натрапив на цей пост:

 $ yum install curl-devel

а під час компіляції програми example.cppпосилайтеся на бібліотеку curl:

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

" -o example" створює виконуваний файл exampleзамість типового a.out.

Наступний рядок працює example:

 $ ./example


3

так, будь ласка, завантажте curl-devel, як зазначено вище. також не забудьте зробити посилання на lib curl:

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

ура


3

Якщо після установки curl-dev luarocks не бачить заголовків:

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/
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.