Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 37, средняя оценка - 4.81
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
#1

Работа с CURL - C++

25.08.2013, 22:42. Просмотров 5041. Ответов 53
Метки нет (Все метки)

Люди, подскажите, как можно прикрутить библиотеку curl к IDЕ Dеv Cплюс плюс . Очень нужно. И желательно все детально расписать :-), и где ее (библиотеку)скачать, нужно именно на Dеv Cплюс плюс , так как скачать другие у меня пока скорость интернета не позволяет

Добавлено через 13 минут
Что никак нельзя сделать? :-(

Добавлено через 19 секунд
Что никак нельзя сделать? :-(

Добавлено через 48 секунд
Что никак нельзя?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.08.2013, 22:42     Работа с CURL
Посмотрите здесь:

C++ Curl, Useragent
C++ CURL *curl;
CURL + MinGW + CodeBlocks C++
Ubuntu + code:blocks + cUrl C++
C++ Curl опция переменной
C++ Установка Curl на Dev C++
C++ Curl и codeblocks
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.08.2013, 17:13     Работа с CURL #21
Да. Может либы не подходят... Что ей ещё нужно я не понял.
gray_fox
What a waste!
1253 / 1136 / 54
Регистрация: 21.04.2012
Сообщений: 2,359
Завершенные тесты: 3
26.08.2013, 17:54     Работа с CURL #22
Цитата Сообщение от Iamweb Посмотреть сообщение
[Linker error] undefined reference to `_imp__curl_easy_init()' ld returned 1 exit status
Библиотеку не забыли прилинковать?
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.08.2013, 18:16     Работа с CURL #23
Цитата Сообщение от gray_fox Посмотреть сообщение
Библиотеку не забыли прилинковать?
Тут не то что не забыли, а не знаю куда эти .a ещё сунуть. Вроде бы, везде, где только можно их прописал.
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
26.08.2013, 21:55  [ТС]     Работа с CURL #24
Цитата Сообщение от alsav22 Посмотреть сообщение
Тут не то что не забыли, а не знаю куда эти .a ещё сунуть. Вроде бы, везде, где только можно их прописал.
ну нонятно вобщем, среда отстой :-) .

Добавлено через 2 часа 49 минут
Цитата Сообщение от alsav22 Посмотреть сообщение
.
почему то вообще не могу скачать кодеблокс, ошибка при загрузке и все, нет других вариантов, где можно скачать?
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.08.2013, 21:57     Работа с CURL #25
Цитата Сообщение от Iamweb Посмотреть сообщение
ошибка при загрузке и все
Второй раз спрашиваю: какая ошибка?
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
26.08.2013, 22:01  [ТС]     Работа с CURL #26
Цитата Сообщение от alsav22 Посмотреть сообщение
Второй раз спрашиваю: какая ошибка?
не знаю, просто ставлю скачкавать, минут пять с места ни сдвигается, а потом просто сбрасывает, или пишет ошибка при скачкавний :-)
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.08.2013, 22:04     Работа с CURL #27
Чем качаете?

Добавлено через 30 секунд
Цитата Сообщение от Iamweb Посмотреть сообщение
или пишет ошибка при скачкавний :-)
Кто пишет?
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
26.08.2013, 22:06  [ТС]     Работа с CURL #28
Цитата Сообщение от alsav22 Посмотреть сообщение
Чем качаете?

Добавлено через 30 секунд

Кто пишет?
мозила, сейчас с хрома попробую :-)
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.08.2013, 22:08     Работа с CURL #29
Если не получится, отсюда попробуйте (2-ая ссылка): http://swdb.ru/code-blocks/download/
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
26.08.2013, 22:20  [ТС]     Работа с CURL #30
Цитата Сообщение от alsav22 Посмотреть сообщение
Если не получится, отсюда попробуйте (2-ая ссылка): http://swdb.ru/code-blocks/download/
спасибо, качает. :-)
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
27.08.2013, 22:56     Работа с CURL #31
Iamweb, как там подключение? Получилось?
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
27.08.2013, 23:28  [ТС]     Работа с CURL #32
Цитата Сообщение от alsav22 Посмотреть сообщение
Разбирайтесь со скачиванием и вот вам инструкция по подключению curl, пробуйте. Будут вопросы - отвечу через час.
После установки среды, проверьте, как она работает. Создайте проект Console Application, скомпилируйте, запустите. Если всё нормально, то подключайте curl. Если нужно только для этого проекта, то делайте всё в настройках проекта 1 скрин (правой кнопкой по имени проекта, Build optons). Если для всех проектов, то в общих настройках компилятора: Settings - Compiler.
2 скрин: здесь прописать путь к папке include библиотеки.
3 скрин: здесь прописать путь к папке lib64 библиотеки.
4.скрин: здесь добавить (через Add) пути к каждой библиотеке в папке lib64 (выделить все и открыть).
Вставить это код, для проверки:

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
//подключаем необходимые заголовочные файлы
#include <string>
#include <iostream>
#include "curl/curl.h"
using namespace std;
 
//объявляем буфер, для хранения возможной ошибки, размер определяется в самой библиотеке
static char errorBuffer[CURL_ERROR_SIZE];
 
//объялвяем буфер принимаемых данных
static string buffer;
 
//функция обратного вызова
static int writer(char *data, size_t size, size_t nmemb, string *buffer)
{
  //переменная - результат, по умолчанию нулевая
  int result = 0;
  //проверяем буфер
  if (buffer != NULL)
  {
    //добавляем к буферу строки из data, в количестве nmemb
    buffer->append(data, size * nmemb);
    //вычисляем объем принятых данных
    result = size * nmemb;
  }
  //вовзращаем результат
  return result;
}
 
//главная функция
int main(void)
{
    setlocale(0, "");
    //необходимые CURL объекты
    CURL *curl;
    CURLcode result;
    //инициализируем curl
    curl = curl_easy_init();
    //проверяем результат инициализации
    if (curl)
    {
      //задаем все необходимые опции
      //определяем, куда выводить ошибки
      curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errorBuffer);
      //задаем опцию - получить страницу по адресу [url]http://cyberforum.ru[/url]
      curl_easy_setopt(curl, CURLOPT_URL, "cyberforum.ru");
      //указываем прокси сервер
      //curl_easy_setopt(curl, CURLOPT_PROXY, "proxy:8080");
      //задаем опцию отображение заголовка страницы
      curl_easy_setopt(curl, CURLOPT_HEADER, 1);
      //указываем функцию обратного вызова для записи получаемых данных
      curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, writer);
      //указываем куда записывать принимаемые данные
      curl_easy_setopt(curl, CURLOPT_WRITEDATA, &buffer);
      //запускаем выполнение задачи
      result = curl_easy_perform(curl);
      //проверяем успешность выполнения операции
      if (result == CURLE_OK)
      //выводим полученные данные на стандартный вывод (консоль)
        cout << buffer << "\n";
      else
        //выводим сообщение об ошибке
        cout << "Ошибка! " << errorBuffer << endl;
  }
  //завершаем сессию
  curl_easy_cleanup(curl);
  return 0;
}


Скомпилировать (пока не запускать). Если всё нормально, то скопировать в папку bin/debug проекта (там, где лежит .exe) dll-ки из папки bin библиотеки. Запустить программу.
что то всеровно вот эту ошибку выдает

||=== hello, Debug ===|
obj\Debug\main.o||In function `main':|
C:\Users\Николай\Desktop\hello\hello\main.cpp|38|undefined reference to `_imp__curl_easy_init'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|44|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|46|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|50|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|52|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|54|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|56|undefined reference to `_imp__curl_easy_perform'|
C:\Users\Николай\Desktop\hello\hello\main.cpp|66|undefined reference to `_imp__curl_easy_cleanup'|
||=== Build finished: 8 errors, 0 warnings (0 minutes, 2 seconds) ===|

Добавлено через 26 минут
Цитата Сообщение от alsav22 Посмотреть сообщение
Iamweb, как там подключение? Получилось?
а вот, у вас в выподаюшем меню selected compiler выбран компилятор mingw64, у меня не имеется токого в списке
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
27.08.2013, 23:57     Работа с CURL #33
Цитата Сообщение от Iamweb Посмотреть сообщение
а вот, у вас в выподаюшем меню selected compiler выбран компилятор mingw64, у меня не имеется токого в списке
На это не смотрите.

Добавлено через 52 секунды
Цитата Сообщение от Iamweb Посмотреть сообщение
всеровно вот эту ошибку выдает
Кто выдаёт? Code Blocks?

Добавлено через 1 минуту
Где настройки делали, в проекте или в общих?

Добавлено через 2 минуты
В 19 посте скрины, выложите такие же свои (кроме первого), чтобы я мог видеть, как у вас настроено.
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
28.08.2013, 00:17  [ТС]     Работа с CURL #34
Цитата Сообщение от alsav22 Посмотреть сообщение
На это не смотрите.

Добавлено через 52 секунды

Кто выдаёт? Code Blocks?

Добавлено через 1 минуту
Где настройки делали, в проекте или в общих?

Добавлено через 2 минуты
В 19 посте скрины, выложите такие же свои (кроме первого), чтобы я мог видеть, как у вас настроено.
да code::blocks выдает

настрайвал, проекта

скрины
Миниатюры
Работа с CURL   Работа с CURL  
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
28.08.2013, 00:31     Работа с CURL #35
Понятно. По первому скрину: уберите вторую строчку (на моих скринах разве есть?), путь к либам не тут нужно добавлять, тут только путь до инклудов, к либам путь там добавьте, где написано: Linker. Когда добавляете пути, то будет вопрос: да-нет, выбирайте нет, чтобы путь полный прописался (без ..\..\, как на скрине, а как у меня чтобы было).
По второму скрину: удалите всё и по новой добавьте пути, но так, чтобы пути полные были (как у меня на четвёртом).

Добавлено через 3 минуты
Как сделаете, запустите перестроить. Если не получится, то опять скрины с настройками выложите (только не два, а три, как у меня (без первого), смотрите внимательнее). Работа с CURL
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
28.08.2013, 00:43  [ТС]     Работа с CURL #36
Цитата Сообщение от alsav22 Посмотреть сообщение
Понятно. По первому скрину: уберите вторую строчку (на моих скринах разве есть?), путь к либам не тут нужно добавлять, тут только путь до инклудов, к либам путь там добавьте, где написано: Linker. Когда добавляете пути, то будет вопрос: да-нет, выбирайте нет, чтобы путь полный прописался (без ..\..\, как на скрине, а как у меня чтобы было).
По второму скрину: удалите всё и по новой добавьте пути, но так, чтобы пути полные были (как у меня на четвёртом).

Добавлено через 3 минуты
Как сделаете, запустите перестроить. Если не получится, то опять скрины с настройками выложите (только не два, а три, как у меня (без первого), смотрите внимательнее). Работа с CURL
таже самая ошибка

obj\Debug\main.o||In function `main':|
C:\Users\Николай\Desktop\hello\curl\main.cpp|38|undefined reference to `_imp__curl_easy_init'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|44|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|46|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|50|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|52|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|54|undefined reference to `_imp__curl_easy_setopt'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|56|undefined reference to `_imp__curl_easy_perform'|
C:\Users\Николай\Desktop\hello\curl\main.cpp|66|undefined reference to `_imp__curl_easy_cleanup'|
||=== Build finished: 8 errors, 0 warnings (0 minutes, 0 seconds) ===|

Русские буквы в пути, не могут быть причиной?
Миниатюры
Работа с CURL   Работа с CURL   Работа с CURL  

alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
28.08.2013, 00:46     Работа с CURL #37
Вы какой код пробуете? Что-то он у вас маленький, 17 строк... Не тот, который я выложил?
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
28.08.2013, 00:48  [ТС]     Работа с CURL #38
Цитата Сообщение от alsav22 Посмотреть сообщение
Вы какой код пробуете? Что-то он у вас маленький, 17 строк... Не тот, который я выложил?
именно тот который вы дали, где 17 строк, я пробовал тестить своим, результат тот же
alsav22
5413 / 4809 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
28.08.2013, 00:59     Работа с CURL #39
ОС какая?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.08.2013, 01:04     Работа с CURL
Еще ссылки по теме:

CURL и шифрование трафика C++
C++ Как подключить CURL?
Подключить CURL к MSVC C++
Подключение библиотеки curl в Visual Studio C++
C++ Сохранение картинки средствами curl

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Iamweb
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 62
28.08.2013, 01:04  [ТС]     Работа с CURL #40
Цитата Сообщение от alsav22 Посмотреть сообщение
ОС какая?
windows7 x64
Yandex
Объявления
28.08.2013, 01:04     Работа с CURL
Ответ Создать тему
Опции темы

Текущее время: 07:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru