LNK2019 无法解析的外部符号 __imp__curl_global_cleanup

本文解决在使用curl库进行编译时遇到的未解析外部符号及多重定义错误等问题,通过调整库文件链接方式最终成功编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

严重性	代码	说明	项目	文件	行	禁止显示状态
警告	C4996	'ctime': This function or variable may be unsafe. Consider using ctime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.	chkspeed	d:\d-pro\curl_examples\allexamples\chkspeed.c	153	
错误	LNK2019	无法解析的外部符号 __imp__curl_global_cleanup,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_easy_cleanup,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_easy_strerror,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_easy_getinfo,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_easy_perform,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_easy_setopt,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_easy_init,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_global_init,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK2019	无法解析的外部符号 __imp__curl_version,该符号在函数 _main 中被引用	chkspeed	D:\D-Pro\curl_examples\curl\curl\chkspeed.obj	1	
错误	LNK1120	9 个无法解析的外部命令	chkspeed	D:\D-Pro\curl_examples\curl\Debug\chkspeed.exe	1	

链接器输入附加依赖项:ws2_32.lib;wldap32.lib;libcurld.lib

这里的 libcurld.lib 根据你的工程的属性来添加。

 libcurld.lib  -- debug

 libcurl.lib    -- release



第二步: C/C++ 预处理器添加预处理定义 CURL_STATICLIB;


 再次编译:报 已经在 LIBCMTD.lib(getenv.obj) 中定义 错误

严重性	代码	说明	项目	文件	行	禁止显示状态
错误	LNK2005	_free 已经在 LIBCMTD.lib(dbgfree.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
警告	C4996	'ctime': This function or variable may be unsafe. Consider using ctime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.	chkspeed	d:\d-pro\curl_examples\allexamples\chkspeed.c	153	
错误	LNK2005	_getenv 已经在 LIBCMTD.lib(getenv.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	___iob_func 已经在 LIBCMTD.lib(_file.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_calloc 已经在 LIBCMTD.lib(dbgcalloc.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_realloc 已经在 LIBCMTD.lib(dbgrealloc.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_malloc 已经在 LIBCMTD.lib(dbgmalloc.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strrchr 已经在 LIBCMTD.lib(strrchr.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	__errno 已经在 LIBCMTD.lib(dosmap.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strchr 已经在 LIBCMTD.lib(strchr.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_wcstombs 已经在 LIBCMTD.lib(wcstombs.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_wcslen 已经在 LIBCMTD.lib(wcslen.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_sprintf 已经在 LIBCMTD.lib(sprintf.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strtol 已经在 LIBCMTD.lib(strtol.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strncmp 已经在 LIBCMTD.lib(strncmp.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strtoul 已经在 LIBCMTD.lib(strtol.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	__time64 已经在 LIBCMTD.lib(time64.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_fclose 已经在 LIBCMTD.lib(fclose.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_memmove 已经在 LIBCMTD.lib(memmove.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strcspn 已经在 LIBCMTD.lib(strcspn.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_atoi 已经在 LIBCMTD.lib(atox.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_strpbrk 已经在 LIBCMTD.lib(strpbrk.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	__lseeki64 已经在 LIBCMTD.lib(lseeki64.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	_fflush 已经在 LIBCMTD.lib(fflush.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	__strtoi64 已经在 LIBCMTD.lib(strtoq.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	__gmtime64 已经在 LIBCMTD.lib(gmtime64.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	"private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) 已经在 LIBCMTD.lib(typinfo.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(ti_inst.obj)	1	
错误	LNK2005	"private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) 已经在 LIBCMTD.lib(typinfo.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(ti_inst.obj)	1	
错误	LNK2005	__write 已经在 LIBCMTD.lib(write.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
错误	LNK2005	__close 已经在 LIBCMTD.lib(close.obj) 中定义	chkspeed	D:\D-Pro\curl_examples\curl\curl\MSVCRTD.lib(MSVCR100D.dll)	1	
警告	LNK4098	默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library	chkspeed	D:\D-Pro\curl_examples\curl\curl\LINK	1	
错误	LNK1169	找到一个或多个多重定义的符号	chkspeed	D:\D-Pro\curl_examples\curl\Debug\chkspeed.exe	1	

第三步:链接器中将  LIBCMTD.lib 添加忽略特定默认库即可。



 再次编译:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ya土豆儿~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值