链接时出现无法解析的外部符号排错
2014-01-14 15:31
736 查看
链接时出现"无法解析的外部符号, 错误信息(cpp编译出的符号)
用dumpbin观察对应dll/lib的导出符号信息
对应的lib/dll的导出符号信息(extern "C" 所编译出的符号)
所编译出的符号信息和导出符号信息不匹配所造成的
自己的代码采用cpp的方式编译而到处符号的代码采用c的方式编译(_stdcall)
将所引用的头文件 用extern "C"包装所引用的头文件以解决问题
BatViewDlg.obj : error LNK2001: unresolved external symbol "unsigned char __stdcall GetPwrCapabilities(struct SYSTEM_POWER_CAPABILITIES *)" (?GetPwrCapabilities@@YGEPAUSYSTEM_POWER_CAPABILITIES@@@Z)
用dumpbin观察对应dll/lib的导出符号信息
dumpbin /exports *.dll dumpbin /exports *.lib
对应的lib/dll的导出符号信息(extern "C" 所编译出的符号)
_GetPwrCapabilities@4
所编译出的符号信息和导出符号信息不匹配所造成的
自己的代码采用cpp的方式编译而到处符号的代码采用c的方式编译(_stdcall)
将所引用的头文件 用extern "C"包装所引用的头文件以解决问题
#ifdef __cplusplus extern "C" { #endif #include <Powrprof.h> #ifdef __cplusplus } #endif
相关文章推荐
- 项目添加UNICODE支持时,出现链接错误error LNK2019: 无法解析的外部符号 _WinMain
- 关于链接过程中出现的“找到一个或多个多重定义的符号”和“无法解析的外部符号”错误的探究
- APR lib 链接出现”error LNK2019: 无法解析的外部符号 __imp__apr_initialize“ 解决办法
- 非MFC工程,采用静态链接MFc时,出现无法解析的外部符号CoInitialize
- 关于vs2010 C++编译链接总是出现“LNK:2019 无法解析的外部符号”的问题
- qt编译中常出现的无法解析的外部符号问题
- 使用glew库容易出现error LNK2019:无法解析的外部符号
- c++ 链接mysql:error LNK2019: 无法解析的外部符号
- error LNK2019:无法解析的外部符号.lib是用vc6编的,其中用到了消息响应,vc6的消息响应函数和vc2005的消息响应函数的参数和返回值类型不同造成的链接问题.
- 解决MFC COM组件开发链接错误error LNK2001: 无法解析的外部符号 _CStdStubBuffer2_Release@4
- 在visual studio2005中设置包含链接库lib文件(无法解析的外部符号 __imp__WSAStartup@8)
- windows编程链接时遇到error LNK2001 无法解析的外部符号_imp_timeGetTime@0
- QT编程中编译的时候出现c_jkdacx0.obj : error LNK2001: 无法解析的外部符号 "class QTextCodec * GlobalCodec" ?
- 编译出现的错误- error LNK2019: 无法解析的外部符号 _GetProcessMemoryInfo@12
- 链接错误:error LNK2019:无法解析的外部符号 __CrtDbgReportW——库冲突(libcmt.lib和libcmtd.lib)
- 问题解决:继承抽象类时出现error LINK2001 无法解析的外部符号
- 关于在vs2005中出现: error LNK2001: 无法解析的外部符号 __security_cookie现象的处理办法
- c++ 链接mysql:error LNK2019: 无法解析的外部符号
- 多媒体编程:出现无法解析的外部符号
- [转]在vs2008上编译获取cpu代码出现的错误- error LNK2019: 无法解析的外部符号 _GetProcessMemoryInfo@12