一般来说,vs可以提供正常的依赖输入窗口用于依赖动态库。
但是当工程设置生成静态库之后,VS默认不支持给静态库增加依赖动态库。
链接器选项没有了。
此时只能够把静态库所依赖的动态库也改成静态库,这样这个静态库才能被正常编译,否则编译的时候会报错,全部都是动态库预编译声明__declspec(dllimport).
有没有什么方法让静态库也能链接动态库呢? 有的。
#pragma comment(lib,"..\\release\\xxx.lib")
在报错调用动态库方法类的文件中声明编译宏定义,让编译器在编译的时候加载该lib动态库,这样我们调用静态库的时候就能找到所依赖的动态库文件。
当然了,如果在编译依赖静态库的工程中添加静态库所要依赖的动态库也是可以让静态库找到动态库的文件环境,从而编译成功。