猿问
编译器如何交叉编译到不同的操作系统和架构?
Go(自 v1.5 起)具有内置的交叉编译选项,这让我非常感兴趣。但是如何为不同的操作系统和架构进行编译呢?我的意思是这需要知道(并且可能表现得像)目标机器语言和平台。
郎朗坤
浏览 211
回答 1
1回答
白衣染霜花
我的意思是这需要知道(并且可能表现得像)目标机器语言和平台。是的,Go 编译器必须知道目标操作系统是如何工作的,但它不需要像目标操作系统那样运行,因为 Go 编译器不会运行已编译的可执行二进制文件,它只需要生成它。所有 Go 工具需要知道的是不同操作系统的二进制格式,以及操作系统和架构细节(例如指令集、字长、字节序、对齐、可用寄存器等;有关此的更多信息)。这些知识被内置到 Go 工具中。
0
0
0
随时随地看视频
慕课网APP
相关分类
Go
我要回答