C/C++教程

在visual studio中使用cmake生成dll中的坑

本文主要是介绍在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)就可以了
要说明的是由于题主的技术能力有限,不知道是不是我机械特有的问题,还是其它特性,不知到具体的原因,如果有大神知道具体原因希望能不宁赐教,谢谢了。

这篇关于在visual studio中使用cmake生成dll中的坑的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!