我有一个第三方 LIB,它的符号导出为纯 C/cdecl,因此例如dumpbin.exe /SYMBOLS
报告两者都__imp_nvmlInit
被nvmlInit
导出。
但是在 Visual Studio 2010 中,当我尝试导入它们时,头文件将具有
extern "C" nvmlReturn_t nvmlInit(...);
但是当我尝试编译时,出现以下错误:
main.obj:错误 LNK2019:函数 _main 中引用的未解析的外部符号 _nvmlInit
如何阻止 Visual Studio 查找带有前导下划线的符号?__declspect(dllimport)
不起作用,因为它装饰为__imp__nvmlInit
(一个下划线太多)。
谢谢。