Can't link on windows
Hello. Im trying to build a project using curlcpp on windows (with makefile). I dont have the same issue on linux with -lcurl, only windows.
I have libcurl_a.lib (static 7.79) and the src/inc files of curlcpp that i want to compile (without using curlcpp.lib) and my file structure is this:
libs
├── 32
│ └── libcurl_a.lib
├── 64
│ └── libcurl_a.lib
├── curl
│ ├── curl.h
│ ├── curlver.h
│ ├── easy.h
│ ├── mprintf.h
│ ├── multi.h
│ ├── options.h
│ ├── stdcheaders.h
│ ├── system.h
│ ├── typecheck-gcc.h
│ └── urlapi.h
├── cookie.cpp
├── cookie_date.cpp
├── cookie_date.h
├── cookie_datetime.cpp
├── cookie_datetime.h
├── cookie.h
├── cookie_time.cpp
├── cookie_time.h
├── curl_config.h
├── curl_cookie.cpp
├── curl_cookie.h
├── curl_easy.cpp
├── curl_easy.h
├── curl_easy_info.h
├── curl_exception.cpp
├── curl_exception.h
├── curl_form.cpp
├── curl_form.h
├── curl_global.cpp
├── curl_global.h
├── curl_header.cpp
├── curl_header.h
├── curl_info.cpp
├── curl_info.h
├── curl_interface.h
├── curl_ios.h
├── curl_multi.cpp
├── curl_multi.h
├── curl_option.h
├── curl_pair.h
├── curl_receiver.h
├── curl_sender.h
├── curl_share.cpp
├── curl_share.h
└── curl_utility.h
On my makefile i included this lines
DIRS += $(CURLCPP_DIR) $(CURLCPP_DIR)/curl (for includes for compiler) LIB_CURL = $(CURLCPP_DIR)/32 (or 64) LDFLAGS += ../$(LIB_CURL)/libcurl_a.lib Crypt32.lib Wldap32.lib Normaliz.lib ws2_32.lib winmm.lib (for linking)
The makefile calls vcvarsall for compile/link. While compile doesnt have issues, i got the following error at the linking stage:
vcvarsall.bat x86 & link -OUT:..\target\32\mydll.dll ..\int\mydll\32\dev\mydll.o \int\mydll\32\dev\libs\curlcpp\cookie.o ..\int\mydll\32\dev\libs\curlcpp\cookie_date.o ..\int\mydll\32\dev\libs\curlcpp\cookie_datetime.o ..\int\mydll\32\dev\libs\curlcpp\cookie_time.o ..\int\mydll\32\dev\libs\curlcpp\curl_cookie.o ..\int\mydll\32\dev\libs\curlcpp\curl_easy.o ..\int\mydll\32\dev\libs\curlcpp\curl_exception.o ..\int\mydll\32\dev\libs\curlcpp\curl_form.o ..\int\mydll\32\dev\libs\curlcpp\curl_global.o ..\int\mydll\32\dev\libs\curlcpp\curl_header.o ..\int\mydll\32\dev\libs\curlcpp\curl_info.o ..\int\mydll\32\dev\libs\curlcpp\curl_multi.o ..\int\mydll\32\dev\libs\curlcpp\curl_share.o -MACHINE:X86 -DLL ../dev/libs/curlcpp/32/libcurl_a.lib Crypt32.lib Wldap32.lib Normaliz.lib ws2_32.lib winmm.lib libcmt.lib Shlwapi.lib Setupapi.lib advapi32.lib ole32.lib user32.lib ws2_32.lib -DEF:..\dev\mydll.def -DCURL_INCLUDE_DIR=dev/libs/curlcpp/curl ../dev/libs/curlcpp/32/libcurl_a.lib Crypt32.lib Wldap32.lib Normaliz.lib ws2_32.lib winmm.lib
curl_multi.o : error LNK2001: símbolo externo _curl_easy_strerror@4 sin resolver
curl_share.o : error LNK2001: símbolo externo _curl_easy_strerror@4 sin resolver
comm_client.o : error LNK2001: símbolo externo _curl_easy_strerror@4 sin resolver
curl_cookie.o : error LNK2001: símbolo externo _curl_easy_strerror@4 sin resolver
curl_easy.o : error LNK2001: símbolo externo _curl_easy_strerror@4 sin resolver
curl_global.o : error LNK2001: símbolo externo _curl_easy_strerror@4 sin resolver
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_strerror
curl_cookie.o : error LNK2019: símbolo externo _curl_slist_free_all@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_easy_info<struct curl_slist *>::~curl_easy_info<struct curl_slist *>(void)" (??1?$curl_easy_info@PAUcurl_slist@@@curl@@QAE@XZ)
curl_header.o : error LNK2001: símbolo externo _curl_slist_free_all@4 sin resolver
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_slist_free_all
curl_easy.o : error LNK2019: símbolo externo _curl_easy_escape@12 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_easy::escape(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?escape@curl_easy@curl@@QAEXAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_escape
curl_easy.o : error LNK2019: símbolo externo _curl_easy_unescape@16 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_easy::unescape(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?unescape@curl_easy@curl@@QAEXAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_unescape
curl_easy.o : error LNK2019: símbolo externo _curl_free@4 sin resolver al que se hace referencia en la función "private: static __stdcall <lambda_51d2c2f2d2b174c4d61844a9860c136f>::<lambda_invoker_stdcall>(char *)" (?<lambda_invoker_stdcall>@<lambda_51d2c2f2d2b174c4d61844a9860c136f>@@CG@PAD@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_free
curl_easy.o : error LNK2019: símbolo externo _curl_global_init@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_interface<enum CURLcode>::global_initializer::global_initializer(long)" (??0global_initializer@?$curl_interface@W4CURLcode@@@curl@@QAE@J@Z)
curl_global.o : error LNK2001: símbolo externo _curl_global_init@4 sin resolver
curl_multi.o : error LNK2001: símbolo externo _curl_global_init@4 sin resolver
curl_share.o : error LNK2001: símbolo externo _curl_global_init@4 sin resolver
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_global_init
curl_easy.o : error LNK2019: símbolo externo _curl_global_cleanup@0 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_interface<enum CURLcode>::global_initializer::~global_initializer(void)" (??1global_initializer@?$curl_interface@W4CURLcode@@@curl@@QAE@XZ)
curl_global.o : error LNK2001: símbolo externo _curl_global_cleanup@0 sin resolver
curl_multi.o : error LNK2001: símbolo externo _curl_global_cleanup@0 sin resolver
curl_share.o : error LNK2001: símbolo externo _curl_global_cleanup@0 sin resolver
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_global_cleanup
curl_easy.o : error LNK2019: símbolo externo _curl_easy_pause@8 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_easy::pause(int)" (?pause@curl_easy@curl@@QAEXH@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_pause
curl_easy.o : error LNK2019: símbolo externo _curl_easy_init@0 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_easy::curl_easy(long)" (??0curl_easy@curl@@QAE@J@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_init
curl_easy.o : error LNK2019: símbolo externo _curl_easy_perform@4 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_easy::perform(void)" (?perform@curl_easy@curl@@QAEXXZ)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_perform
curl_easy.o : error LNK2019: símbolo externo _curl_easy_cleanup@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_easy::curl_easy(class curl::curl_easy const &)" (??0curl_easy@curl@@QAE@ABV01@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_cleanup
curl_easy.o : error LNK2019: símbolo externo _curl_easy_duphandle@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_easy::curl_easy(class curl::curl_easy const &)" (??0curl_easy@curl@@QAE@ABV01@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_duphandle
curl_easy.o : error LNK2019: símbolo externo _curl_easy_reset@4 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_easy::reset(void)" (?reset@curl_easy@curl@@QAEXXZ)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_easy_reset
curl_form.o : error LNK2019: símbolo externo _curl_formfree@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_form::~curl_form(void)" (??1curl_form@curl@@QAE@XZ)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_formfree
curl_header.o : error LNK2019: símbolo externo _curl_slist_append@8 sin resolver al que se hace referencia en la función "public: class curl::curl_header & __thiscall curl::curl_header::operator=(class curl::curl_header const &)" (??4curl_header@curl@@QAEAAV01@ABV01@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_slist_append
curl_info.o : error LNK2019: símbolo externo _curl_version_info@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_info::curl_info(enum CURLversion)" (??0curl_info@curl@@QAE@W4CURLversion@@@Z)
curl_multi.o : error LNK2019: símbolo externo _curl_multi_init@0 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_multi::curl_multi(long)" (??0curl_multi@curl@@QAE@J@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_init
curl_multi.o : error LNK2019: símbolo externo _curl_multi_add_handle@8 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_multi::add(class curl::curl_easy const &)" (?add@curl_multi@curl@@QAEXABVcurl_easy@2@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_add_handle
curl_multi.o : error LNK2019: símbolo externo _curl_multi_remove_handle@8 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_multi::remove(class curl::curl_easy const &)" (?remove@curl_multi@curl@@QAEXABVcurl_easy@2@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_remove_handle
curl_multi.o : error LNK2019: símbolo externo _curl_multi_fdset@20 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_multi::set_descriptors(struct fd_set *,struct fd_set *,struct fd_set *,int *)" (?set_descriptors@curl_multi@curl@@QAEXPAUfd_set@@00PAH@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_fdset
curl_multi.o : error LNK2019: símbolo externo _curl_multi_wait@20 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_multi::wait(struct curl_waitfd * const,unsigned int,int,int *)" (?wait@curl_multi@curl@@QAEXQAUcurl_waitfd@@IHPAH@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_wait
curl_multi.o : error LNK2019: símbolo externo _curl_multi_perform@8 sin resolver al que se hace referencia en la función "public: bool __thiscall curl::curl_multi::perform(void)" (?perform@curl_multi@curl@@QAE_NXZ)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_perform
curl_multi.o : error LNK2019: símbolo externo _curl_multi_cleanup@4 sin resolver al que se hace referencia en la función "public: class std::unique_ptr<void,struct curl::curl_multi::multi_deleter> & __thiscall std::unique_ptr<void,struct curl::curl_multi::multi_deleter>::operator=<struct curl::curl_multi::multi_deleter,0>(class std::unique_ptr<void,struct curl::curl_multi::multi_deleter> &&)" (??$?4Umulti_deleter@curl_multi@curl@@$0A@@?$unique_ptr@XUmulti_deleter@curl_multi@curl@@@std@@QAEAAV01@$$QAV01@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_cleanup
curl_multi.o : error LNK2019: símbolo externo _curl_multi_info_read@8 sin resolver al que se hace referencia en la función "public: class std::unique_ptr<class curl::curl_multi::curl_message,struct std::default_delete<class curl::curl_multi::curl_message> > __thiscall curl::curl_multi::get_info(class curl::curl_easy const &)" (?get_info@curl_multi@curl@@QAE?AV?$unique_ptr@Vcurl_message@curl_multi@curl@@U?$default_delete@Vcurl_message@curl_multi@curl@@@std@@@std@@ABVcurl_easy@2@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_info_read
curl_multi.o : error LNK2019: símbolo externo _curl_multi_strerror@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_multi_exception::curl_multi_exception(enum CURLMcode,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0curl_multi_exception@curl@@QAE@W4CURLMcode@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_strerror
curl_multi.o : error LNK2019: símbolo externo _curl_multi_socket_action@16 sin resolver al que se hace referencia en la función "public: bool __thiscall curl::curl_multi::socket_action(unsigned int,int)" (?socket_action@curl_multi@curl@@QAE_NIH@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_socket_action
curl_multi.o : error LNK2019: símbolo externo _curl_multi_timeout@8 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_multi::timeout(long *)" (?timeout@curl_multi@curl@@QAEXPAJ@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_timeout
curl_multi.o : error LNK2019: símbolo externo _curl_multi_assign@12 sin resolver al que se hace referencia en la función "public: void __thiscall curl::curl_multi::assign(unsigned int,void *)" (?assign@curl_multi@curl@@QAEXIPAX@Z)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_multi_assign
curl_share.o : error LNK2019: símbolo externo _curl_share_init@0 sin resolver al que se hace referencia en la función "protected: void __thiscall curl::curl_share::initialize_curl_share(void)" (?initialize_curl_share@curl_share@curl@@IAEXXZ)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_share_init
curl_share.o : error LNK2019: símbolo externo _curl_share_cleanup@4 sin resolver al que se hace referencia en la función "public: virtual __thiscall curl::curl_share::~curl_share(void)" (??1curl_share@curl@@UAE@XZ)
Sugerencia sobre los símbolos definidos que podrían coincidir:
_curl_share_cleanup
..\target\32\mydll.dll : fatal error LNK1120: 30 externos sin resolver
make: *** [../target/32/mydll.dll] Error 1120
I know that linking gets the libcurl lib because if i change the name/misspell it gives lib not found. Sorry i cant provide the full makefile and spanish language on the errors but are external/unresolved symbol.
Any ideas? I know that building curlcpp.lib is another option but im having issues with visual studio solution and x86 building conflicts.
Managed to compile and link an example for x64 (sill cant compile curlcpp.lib for x86) and it works. The only issue now is the LNK4217 warning
PS C:\Users\user\Documents\curlcpp_test> vcvarsall.bat x64 '&' cl /EHsc /DCURL_STATICLIB .\easy_info.cpp -I.\libs\curlcpp\ /link .\libs\curlcpp\64\libcurl_a.lib advapi32.lib crypt32.lib normaliz.lib wldap32.lib ws2_32.lib /nodefaultlib:libcmt.lib .\libs\curlcpp\64\curlcpp.lib
** Copyright (c) 2021 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
Compilador de optimización de C/C++ de Microsoft (R) versión 19.29.30133 para x64
(C) Microsoft Corporation. Todos los derechos reservados.
easy_info.cpp
Microsoft (R) Incremental Linker Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.
/out:easy_info.exe
.\libs\curlcpp\64\libcurl_a.lib
advapi32.lib
crypt32.lib
normaliz.lib
wldap32.lib
ws2_32.lib
/nodefaultlib:libcmt.lib
.\libs\curlcpp\64\curlcpp.lib
easy_info.obj
LINK : warning LNK4217: "curl_easy_escape" importa el sÃmbolo "libcurl_a.lib(escape.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: void __cdecl curl::curl_easy::escape(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?escape@curl_easy@curl@@QEAAXAEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)"
LINK : warning LNK4217: "curl_easy_unescape" importa el sÃmbolo "libcurl_a.lib(escape.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: void __cdecl curl::curl_easy::unescape(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?unescape@curl_easy@curl@@QEAAXAEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)"
LINK : warning LNK4217: "curl_free" importa el sÃmbolo "libcurl_a.lib(escape.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""private: static __cdecl <lambda_a5490d485619adb319274a36824fe087>::<lambda_invoker_cdecl>(char *)" (?<lambda_invoker_cdecl>@<lambda_a5490d485619adb319274a36824fe087>@@CA@PEAD@Z)"
LINK : warning LNK4217: "curl_global_init" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: __cdecl curl::curl_interface<enum CURLcode>::global_initializer::global_initializer(long)" (??0global_initializer@?$curl_interface@W4CURLcode@@@curl@@QEAA@J@Z)"
LINK : warning LNK4217: "curl_global_cleanup" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: __cdecl curl::curl_interface<enum CURLcode>::global_initializer::~global_initializer(void)" (??1global_initializer@?$curl_interface@W4CURLcode@@@curl@@QEAA@XZ)"
LINK : warning LNK4217: "curl_easy_strerror" importa el sÃmbolo "libcurl_a.lib(strerror.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: __cdecl curl::curl_easy_exception::curl_easy_exception(enum CURLcode const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0curl_easy_exception@curl@@QEAA@AEBW4CURLcode@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)"
LINK : warning LNK4217: "curl_easy_pause" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: void __cdecl curl::curl_easy::pause(int)" (?pause@curl_easy@curl@@QEAAXH@Z)"
LINK : warning LNK4217: "curl_easy_init" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: __cdecl curl::curl_easy::curl_easy(long)" (??0curl_easy@curl@@QEAA@J@Z)"
LINK : warning LNK4217: "curl_easy_setopt" importa el sÃmbolo "libcurl_a.lib(setopt.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: void __cdecl curl::curl_easy::add<10001>(void *)" (??$add@$0CHBB@@curl_easy@curl@@QEAAXPEAX@Z)"
LINK : warning LNK4217: "curl_easy_perform" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: void __cdecl curl::curl_easy::perform(void)" (?perform@curl_easy@curl@@QEAAXXZ)"
LINK : warning LNK4217: "curl_easy_cleanup" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: __cdecl curl::curl_easy::curl_easy(class curl::curl_easy const &)" (??0curl_easy@curl@@QEAA@AEBV01@@Z)"
LINK : warning LNK4217: "curl_easy_duphandle" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: __cdecl curl::curl_easy::curl_easy(class curl::curl_easy const &)" (??0curl_easy@curl@@QEAA@AEBV01@@Z)"
LINK : warning LNK4217: "curl_easy_reset" importa el sÃmbolo "libcurl_a.lib(easy.obj)" definido en "curlcpp.lib(curl_easy.obj)" en la función ""public: void __cdecl curl::curl_easy::reset(void)" (?reset@curl_easy@curl@@QEAAXXZ)"
PS C:\Users\user\Documents\curlcpp_test> .\easy_info.exe
text/html; charset=ISO-8859-1
Update: I added CURL_STATICLIB on visual studio Preprocessor before compile curlcpp.lib to solve the issues later since the example worked but no when i tryied to use in another program. x64 works great with no errors (except the linker warning) but x86 have this issue:
client.o : error LNK2019: símbolo externo __imp__curl_global_init@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_interface<enum CURLcode>::global_initializer::global_initializer(long)" (??0global_initializer@?$curl_interface@W4CURLcode@@@curl@@QAE@J@Z)
client.o : error LNK2019: símbolo externo __imp__curl_global_cleanup@0 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_interface<enum CURLcode>::global_initializer::~global_initializer(void)" (??1global_initializer@?$curl_interface@W4CURLcode@@@curl@@QAE@XZ)
client.o : error LNK2019: símbolo externo __imp__curl_easy_strerror@4 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_easy_exception::curl_easy_exception(enum CURLcode const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0curl_easy_exception@curl@@QAE@ABW4CURLcode@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
client.o : error LNK2019: símbolo externo __imp__curl_easy_init@0 sin resolver al que se hace referencia en la función "public: __thiscall curl::curl_easy::curl_easy<class std::basic_ostringstream<char,struct std::char_traits<char>,class std::allocator<char> > >(class curl::curl_ios<class std::basic_ostringstream<char,struct std::char_traits<char>,class std::allocator<char> > > &)" (??$?0V?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@curl_easy@curl@@QAE@AAV?$curl_ios@V?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@1@@Z)
..\output\mydll.dll : fatal error LNK1120: 4 externos sin resolver
make: *** [../output/mydll.dll] Error 1120
Both following the same compile process. Im trying to find if its not a libcurl related issue but is strange that i have no errors on x64.
This seems to be a problem related to a missing curl library on your system. I've added the build for dynamic library, try again.