Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как использовать статическую libcurl.lib 
V
    Опции темы
neosapient
Дата 16.11.2014, 02:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 16.8.2006

Репутация: нет
Всего: 4



Здравствуйте.

Надо как то прилинковать статически собраную библиотеку cURL к примеру http://curl.haxx.se/libcurl/c/smtp-mail.html
Уже месяц не могу решить эту задачу  smile 

Отмечу, что сделал две сборки cUrl: dll и статическую библиотеку. 
1) При этом libcurl.dll основана на libeay32.dll и ssleay32.dll. Если её использовать с примером по ссылке, то пример легко собирается.  (сборка лежит в папке libcurl-vc9-x86-release-dll-ssl-dll-ipv6)
2) А статическая библиотека libcurl.lib основана на libeay32.lib и ssleay32.lib. (сборка лежит в папке libcurl-vc9-x86-release-static-ssl-static-ipv6-obj-lib)
Если её использовать с примером по ссылке, то выдаются следующие ошибки
Цитата

1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_easy_init
1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_easy_setopt
1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_slist_append
1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_easy_perform
1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_easy_strerror
1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_slist_free_all
1>curl_smtp_test.obj : error LNK2001: unresolved external symbol __imp__curl_easy_cleanup


Пути к папкам include и lib прописаны верно. 
Cаму библиотеку libcurl.lib  указал в настройках проекта Release. А библиотеку libcurl_a.lib указал в настройках проекта Debug.
(Дошло до  #pragma comment(lib, "libcurl.lib") но и это не помогло)

Вот думаю, может какие-нибудь #define надо указать?
Может у кого есть опыт?

P.S.
Месяц назад уже пробовал эту статическую сборку запустить, но не сумел. Сейчас вернулся к задаче, но "зело крепок сей орешек".

Собираю под VC9
curl-7.38.0
openssl-1.0.1i
PM MAIL   Вверх
maint
Дата 16.11.2014, 04:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 12.5.2008

Репутация: 1
Всего: 2



из stackoverflow

I've been using static version of libcurl, and to link my program against it properly, I had to add definition:

CURL_STATICLIB

to build configuration of my project.

PM   Вверх
neosapient
Дата 16.11.2014, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 16.8.2006

Репутация: нет
Всего: 4



maint, спасибо, помогло!

Добавил в проект макроопределение CURL_STATICLIB
Ещё потребовалось прилинковать ws2_32.lib и Wldap32.lib (к чему относится последняя не понятно)
+
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0580 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.