在visual studio中使用cmake生成dll中的坑
作者:互联网
最近改用visual studio写c++,把我之前基于MinGW的代码库clon下来在vs中跑,结果不能运行,因为链接器总是莫名奇妙地链接的我想要生成的dll文件同名的lib文件如下图所示
文件结构很好看懂,shared.cpp和shared.hpp生成dll,然后main链接该dll(至少我之前在linux或者在window上用MinGW一直这么搞的没问题)。但是使用看最下面的输出,我明明想要链接"shared.dll",却总是链接到"shared.lib",一直生成失败。
解决方法就是在CMakeLists.txt文件中添加SET(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)就可以了
要说明的是由于题主的技术能力有限,不知道是不是我机械特有的问题,还是其它特性,不知到具体的原因,如果有大神知道具体原因希望能不宁赐教,谢谢了。
标签:文件,cmake,lib,dll,visual,studio,shared,生成,链接 来源: https://www.cnblogs.com/BeiMingXianYv/p/16644332.html