因为这两天在学习Redis的使用,网上能够搜索到封装的c接口—hiredis组件,直接在调用hiredis的接口时,出现了几个依赖库没有的问题,不知道是其他大佬给省略了还是我这边环境的问题
这里记录一下,以便后续发生类似的情况花费更多的时间。
编译问题如下:
其中除了第一条外,可以百度查询其函数在哪一个库里面被包含。
添加依赖库代码:
#pragma comment(lib, "Advapi32.lib")
第一条错误error LNK2001: unresolved external symbol __imp__wsprintfW ,这个在MSDN也只能查到是属于winuser.h头文件的,并不能查询到依赖库,其实该函数是在user32.lib里面是有的,因此添加引入该依赖库的代码即可:
#pragma comment(lib, "user32.lib")
出现error LNK2019和LNK2001的错误,很大可能性是依赖库名或者依赖库的路径没加导致的,另外可能是引用了C的库,导致编译器按照C去编译了也会导致这样的错误,这样就得使用extern C去解决了