小编典典

如何减少编译文件的大小?

go

让我们比较一下c:Hello_world.c:

#include<stdio.h>
int main(){
    printf("Hello world!");
}

Hello_world.go:

package main
import "fmt"
func main(){
    fmt.Printf("Hello world!")
}

都编译:

$gcc Hello_world.c -o Hello_c 
$8g Hello_world.go -o Hello_go.8
$8l Hello_go.8 -o Hello_go

还有,这是什么?

$ls -ls
... 5,4K 2010-10-05 11:09 Hello_c
... 991K 2010-10-05 11:17 Hello_go

大约1Mb的世界。你在跟我开玩笑吗?我做错了什么?

(仅限Hello_go-> 893K)


阅读 382

收藏
2020-07-02

共1个答案

小编典典

文件较大是否有问题?我不知道Go,但是我认为它会静态链接某些运行时库,而C程序则不是这种情况。但是,只要程序变大,就不必担心。

如上所述这里,静态链接Go运行时是默认的。该页面还告诉您如何设置动态链接。

2020-07-02