Подтвердить что ты не робот

Использование LibCURL С++

Я пытаюсь использовать LibCURL на С++ уже пару часов, и это действительно нервирует. У меня такое чувство, что раньше у кого-то была такая проблема, но я не нашел и сообщений, которые дали мне решение.

Это то, что я сделал:

Так как страница загрузки libCurl настолько запутанна, я публикую именно то, что я сделал. Сначала я загрузил файл вверху (curl-7.23.1.zip), а затем открыл его в winRAR. Затем я вошел в папку include, а затем извлек из нее папку "curl".

enter image description here

Затем я создал новый проект с кодом:: Blocks, а затем переместил папку "curl" в ту же папку, что и мой проект.

enter image description here

Затем я добавляю '#include "curl/curl.h" ' в начало моего файла, а затем пытаюсь инициализировать простой CURL var... Затем я получаю сообщение об ошибке:

...\main.cpp|22|undefined reference to `_imp__curl_easy_init'|

Вот изображение фактического кода/ошибки: enter image description here

Честно говоря, я думаю, что это очень глупо, что я делаю, но я просто не знаю, что делать.

4b9b3361

Ответ 1

Наконец, он получил работу с некоторой помощью

Вот как я это сделал:

  • Загрузите пакет libcurl 'Win32 Generic'. (7.24.0)
  • В Code:: Blocks щелкните правой кнопкой мыши ваш проект и откройте параметры сборки.
  • Перейдите в "Настройки компоновщика" и добавьте "curldll" в список "Библиотеки ссылок". (изображение)
  • Перейдите в "Поиск каталогов" и в разделе "Компилятор" привяжите его к пути вашей папки "curl-7.24.0-devel-mingw32\include".
  • Перейдите на вкладку "Linker" в разделе "Каталоги поиска" и добавьте путь к каталогу вашего curl-7.24.0-devel-mingw32\lib.
  • Переместите все библиотеки DLL из папки "curl-7.24.0-devel-mingw32\bin" в папку "bin" ваших проектов.
  • Постройте и наслаждайтесь

Чтобы использовать libCurl с Qt, это немного проще.

  • Переместите все необходимые файлы /dlls/libraries в папку для отладки. Убедитесь, что вы включили папку "curl".
  • Перейдите в ваш .pro файл и добавьте местоположение файла libcurldll.a. Например (мой):

    LIBS + = C:\libcurl\7.24.0\lib\libcurldll.a

  • Enjoy.

Спасибо R. Martinho Fernandes!

Ответ 2

Вы также должны указать папку lib/ из libcurl, которая содержит файлы *.a или *.dll. Файлы тезисов - это сама библиотека, скомпилированная двоичная информация, по которой вы связываете свою программу.

Если вы связываете библиотеку динамически, вам нужно поместить *.dll в каталог проекта в C:\Windows или в C:\MinGW\bin (если C:\MinGW - путь к компилятору).

Ответ 3

"Сначала я загрузил файл вверху (curl-7.23.1.zip), а затем открыл его в winRAR. Затем я вошел в папку include и извлек из него папку" curl "."

Похоже, вы не скомпилировали исходный код для завивки. Все загрузки в верхней части страницы являются только источником.