gpt4 book ai didi

google-chrome - Chrome : How can 1. 5GB 的源代码被压缩成 50MB 的可执行文件

转载 作者:行者123 更新时间:2023-12-04 04:49:11 25 4
gpt4 key购买 nike

这简直让我感到困惑。我刚刚下载了 Chrome 源代码的 1.5GB tarball。编译后的相同代码压缩到大约 50MB。

为什么源代码的大小和可执行文件的大小之间存在如此大的差异?

最佳答案

可能导致这种情况的一系列事情。

  • 可执行文件不需要空格、注释或任何漂亮的格式化内容。源代码可能有大量的文档和空白,只是为了使代码可读,所有这些都占用空间。
  • 源代码可能会带来很多其他代码来测试应用程序。但是这个测试代码永远不会进入最终应用程序。
  • 代码中包含的文档。根据格式、.doc 或 .docx 文件,文档可能很大。
  • 其他人提到源代码控制注释也可能在代码中。在源代码中包含提交消息也会使文件变大。
  • 我不知道您是如何/何时进行文件比较的,但是如果您是在编译时间之后进行的,那么您的计算中可能也包含了编译工件(*.o 文件)。因此,当源代码实际上只有 750 MB(粗略地说)时,您可能会认为它是 1.5GB。
  • 根据编译器及其性能的不同,它可能会生成更少的汇编代码,从而创建更小的文件。虽然我认为今天的大多数编译器都是合理的,这不应该考虑太多的大小差异。 (但我可能是错的,我不是编译器人)
  • 如果应用程序是用所有库静态编译的,它会更大,因为现在它必须在其中包含它的依赖项。但是,如果库是动态链接/加载的,则可执行文件本身可能会小得多,因为它只会在运行时链接到库,并且仅在需要时加载它们。

  • tarball 是 1.5GB 还是扩展的 tarball 1.5GB?

    无论如何,这里可能有很多因素在起作用。

    关于google-chrome - Chrome : How can 1. 5GB 的源代码被压缩成 50MB 的可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11768055/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com