代码之家  ›  专栏  ›  技术社区  ›  CuppM

Visual C++ 9(2008)静态LIB + Boost库=大.LIB文件

  •  1
  • CuppM  · 技术社区  · 14 年前

    我有一个VisualStudio 2008 C++项目,它输出一个静态库并使用Boost库的一些功能。在调试配置中生成项目时,.lib文件为7.84 MB。当我在release配置中构建项目时,.lib文件是23.5 MB。!!!!!!

    我所包含的boost头文件只有:

    • boost/function.hpp
    • boost/exception/all.hpp

    因为这是一个静态库,所以我没有指定要包含的任何boost库文件,但不知何故它是一个ginormous输出。当我在测试可执行文件中使用该静态库时,生成的.exe文件在debug中只有746kb,在release中只有231kb。

    问题是,我必须创建一个“版本”的库,以签入其他项目使用的不同存储库。我更希望每次更新时不必添加30MB的文件。如果没有其他事情,它真的让我困惑,为什么发布版本的大小是调试的3倍。

    有人对我做错了什么有什么建议吗?

    谢谢, 马特

    1 回复  |  直到 14 年前
        1
  •  3
  •   Hans Passant    14 年前

    Project +属性,C/C++,优化,整个程序优化=不,至少应该保持发布版本的大小不被炸毁。我无法重新设置调试库的大小,只是头给了我一个111kb.lib。