首页 > 解决方案 > 为什么在不同操作系统上编译时可执行文件大小不一样

问题描述

我用c程序编写的程序,在ubuntu18.04上编译时可执行文件大小为8KB,但如果在ubuntu20.04上编译程序,可执行文件大小为17KB。

为什么差距如此之大?

    #include <stdio.h>
    
    int  main() {
      printf("hello world\n");
      return 0;
    }

标签: c

解决方案


编译程序的大小将取决于编译器、编译器和链接器选项、库、启动代码和可执行文件格式。

即使只有上述之一不同,也不太可能相同。


推荐阅读