我有一个 C/C++ Visual Studio 2013 Community Edition 项目,它被定义为生成一个 DLL,但我对“ undefined symbol ”感到很痛苦,我想在另一个项目中使用它,所以我决定看看如果我更改项目设置,它会生成一个静态库,它会产生什么结果。
所以在我去的项目的属性窗口中
配置属性>常规>项目默认值>配置类型
并将配置类型设置为静态库 目标扩展名是 .lib。
当我进行重建时,我仍然在我的 Release 文件夹中得到一个新的 dll 文件,以及一个 lib,并且 DLL 文件比 lib 文件大得多。这使得 lib 文件看起来像一个“导出 lib”文件,并且看起来没有任何改变。 如果我停止并重新启动 Visual Studio,这种情况仍然会发生。
我是不是遗漏了什么,或者这对您来说像是一个错误吗?
最佳答案
在 Configuration Properties - C/C++ - Runtime Library
中,将Multi-threaded (/MT)
设置更改为 Release
配置和 Multi-threaded Debug (/MTd)
用于 Debug
配置。
此外,检查 Configuration Properties - General - General - Target extension
是否设置为 .lib
。
检查所有配置的设置(Release
和 Debug
如果您使用它们)。
关于c++ - 是否可以使用 Visual Studio 2013 Community Edition 创建静态库 C++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29538543/