c++ - 是否可以使用 Visual Studio 2013 Community Edition 创建静态库 C++?

标签 c++ visual-studio

我有一个 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 配置。

Screenshot of Settings

此外,检查 Configuration Properties - General - General - Target extension 是否设置为 .lib

检查所有配置的设置(ReleaseDebug 如果您使用它们)。

关于c++ - 是否可以使用 Visual Studio 2013 Community Edition 创建静态库 C++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29538543/

相关文章:

c++ - 类范围的枚举

c++ - 获取指向 IUpdate2 接口(interface)的指针

c++ - 为什么 c++ regex_match 函数需要在函数外部定义搜索字符串?

c# - 使用 IIS6 将 C# Web 应用程序添加到网站

c++ - 我应该在高度动态的系统中使用优先级队列来调度任务(功能等)吗?

c++ - boost 多精度整数的类型特征

C++ RNG(随机数生成)优化

c# - 如何 *un*-alphabetize Visual Studio 中的方法和字段 (2010)

visual-studio - 了解 masm32 和 Visual Studio 2013 的程序集语法问题

.net - Visual Studio 解决方案项目引用或 Dll 引用