在某些静态库中打开整个程序优化会大大增加库的大小!

2024-01-08

在 Visual Studio 2010 中,我有一个 C/C++ 静态库项目。当我打开该选项时整个程序优化 in release模式下,我获得了超过 90 MB 的 .lib 文件! 当我关闭此选项时,大小会减少到 24 MB。 该库包含数百个使用 proto-buffer 生成的类。

我想知道为什么这个选项会增加大小? 什么情况下我们必须关闭它?

编辑:将 MO 更改为 MB 感谢 chrisaycock


整个程序优化意味着直到链接阶段才进行优化。

静态库的大小不是重点。在此模式下,静态库可能充满最终优化/链接阶段所需的额外信息。如果您没有进行整个程序优化,那么在构建静态库后该信息可能会被丢弃,但是当您这样做时,该信息必须保留到最后。

相反,请查看最终可执行文件的大小。 (可能还会增加,但应该不会增加这么大。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在某些静态库中打开整个程序优化会大大增加库的大小! 的相关文章

随机推荐

  • 如何在Windows Mobile中读取GPS信号强度?

    如何从 Windows Mobile 5 和 或 6 中的 Compact NET 应用程序读取 GPS 信号强度 我只在 API 中看到了 GPRS 和 Wi Fi 信号强度的访问器 查看MSDN 上的 GPS 应用程序 Windows
  • 使用多个分隔符(包括分隔符)分割字符串

    我想使用多个字符分隔符分割字符串 但我也想存储分隔符 我的分隔符是 例如 如果我有一个字符串 26 78 12 23 16 我想要得到 26 78 12 23 16 每行作为一个单独的数组元素 我认为你不能使用 split 函数来实现这一点
  • jsPDF - 我需要帮助将 pdf 嵌入到网页上

    我正在使用 jsPDF 创建一个将在网页上显示的 pdf 但我似乎无法正确嵌入它 如果我输入 pdf就会加载doc output dataurl 但它会在新窗口中加载 我知道这就是它应该做的 我制作了一个 div 它使用对象标签来保存 pd
  • 有什么方法可以同时跨多个非连续修订进行 svn diff 或 svn merge 吗?

    所以在 SVN 中你可以做这样的事情 svn merge r555 558 svn diff c551 但是 据我所知 没有办法做到 svn merge r555 558 592 594 svn diff c551 557 563 对于合并
  • 使用 facebook graph api 进行 Oauth 注销

    我刚刚创建了一个网站 在其中使用 oauth2 0 和 graph api 授权用户 我还想在用户单击注销按钮时从我的网站和 Facebook 注销用户 我在过去 24 小时内找不到解决方案 我的代码位于 asp net 中 提前致谢 如果
  • 在 C# 中,如何用 & 替换\u0026?

    我在 C 代码中得到一个来自某些 javascript 序列化的字符串 并且我看到了一堆如下所示的字符串 Peanut Butter u0026 Jelly 我尝试这样做 string results resultFromJsonSeria
  • Java 日期四舍五入

    我想要一种优雅的方式将 java Date 向上或向下舍入到最近的分钟 或秒 小时 天 例如 日期 Wed Jan 25 10 36 34 GMT 2012 四舍五入到最接近的分钟将是 Wed Jan 25 10 37 00 GMT 201
  • HSV 到 RGB 颜色转换

    有没有办法使用 python 中的 pygame 模块将 HSV 颜色参数转换为 RGB 类型颜色参数 我尝试了以下代码 但它返回了荒谬的值 import colorsys test color colorsys hsv to rgb 35
  • 如何从客户端重定向 GWT 应用程序?

    您可能知道 servlet 端的 res sendRedirect url 不起作用 因为 GWT 客户端不处理它 有人知道该怎么做吗 感谢您 丹尼尔 Window Location 分配 newUrl http google web to
  • 雄辩有原始问题

    我有 2 个 SQL 表 一个代表旅行 另一个代表这些旅行的预订 结构如下 tours int id int max participants int state bookings int id fk tour fk date int nu
  • 如何完全卸载使用easy_install安装的pip?

    在 Windows 7 上 我使用 easy install 安装 pip 并且想要安装较低版本的 pip 我想删除旧版本 但不知道如何完全删除 easy install 安装的 pip 或者如果有一种方法可以在不通过 easy insta
  • 如何使用 Web API Get 方法返回图像

    我需要使用 Web API Get 方法返回图像 下面的代码似乎工作正常 除了我在 Fiddler 的 ImageView 窗口中收到此消息 此响应已编码 但不声称是图像 public HttpResponseMessage Get usi
  • Nginx“ssl_stapling”被忽略,在 OCSP 响应程序“ocsp.comodoca.com”中找不到主机

    我正在尝试在 Nginx 上设置 OCSP 装订 我收到错误 ssl stapling ignored host not found in OCSP responder ocsp comodoca com 这是文件 conf server
  • 如何在 JavaScript 中从 URL 获取 JSON?

    返回 JSON query count 1 created 2015 12 09T17 12 09Z lang en US diagnostics 我尝试了这个 但没有成功 responseObj readJsonFromUrl http
  • ViewModel 无法在 Activity 中实例化

    我正在尝试实例化一个 ViewModel 以在我的所有 Activity 中使用 public class LaunchActivity extends Activity private Controller control Overrid
  • Visual Studio 2017 Team Services:可以登录github帐户,但无法推送更改

    我一直在尝试通过 Visual Studio 2017 Team Services 在我的笔记本电脑上设置 github 它让我首先登录 甚至让我将存储库克隆 分叉到本地文件夹中 问题是每次我尝试推回 github 时都会出现以下错误 推送
  • 在 mysql 中使用 group by 仅选择最后一个值

    我有一张表 其中包含有关参加某些活动的数据 我在表中记录了用户每次发送新考勤时的考勤数据 信息如下 mysql gt SELECT id branch channel id member attendance timestamp id me
  • 如何从闪亮的 ggplotly 中获取数据行

    代码如下 我正在尝试使用plotly click事件来确定正在选择哪些数据 但是 我不知道该怎么做 plotly click 提供的数据非常少 根本不包括分组 我没有任何JS经验 但我知道一定有办法 我的目标是能够选择一个数据点并能够抓取它
  • 如何将 Scripting.FileSystemObject 标记为脚本安全?

    介绍 我正在为数控机床编程 确切地说是比雅斯的漫游者 用于编程的软件编辑器支持VBScript VBScript 用于实现条件语句和循环等 在软件说明中 我列出了 VBScript 中标记为不使用的所有语法 以避免复杂化 当然 我想使用 V
  • 在某些静态库中打开整个程序优化会大大增加库的大小!

    在 Visual Studio 2010 中 我有一个 C C 静态库项目 当我打开该选项时整个程序优化 in release模式下 我获得了超过 90 MB 的 lib 文件 当我关闭此选项时 大小会减少到 24 MB 该库包含数百个使用