golang程序的跨平台编译
来源:互联网 发布:吉他知乎 编辑:程序博客网 时间:2024/05/22 10:31
golang程序的跨平台编译
最近写的golang服务器程序, 开始在X86_64上面运行,后来要求在ARM平台上执行,查阅了若干资料反复尝试才完成任务,程序可以在ARM上面执行,将关键点记录以备将来查阅。
golang的编译环境安装在X86_64上,设置主机变量如下,表示宿主环境为X64下的linux,
GOHOSTARCH="amd64"
GOHOSTOS="linux"
当编译X64下的目标程序时,设置目标变量如下, 表示目标执行环境为X64下的linux,
GOARCH="amd64"
GOOS="linux"
如果目标环境为ARM下的linux, 比如树莓派盒子,设置变量如下:
GOARCH="arm"
GOARM="7"
GOOS="linux"
在工程的根目录下,执行go build即可生成目标程序,使用readelf -h ./exc_bin可以查看目标文件的信息,
ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: Advanced Micro Devices X86-64
其中Machine表示目标平台,X86就是Intel平台,如果是ARM,就是树莓盒子了。
- golang程序的跨平台编译
- golang编译arm平台程序
- golang跨平台编译
- Golang 跨平台编译
- Golang跨平台交叉编译
- golang不同平台间的交叉编译
- MacOSX交叉编译Win_x86的GoLang程序
- Windows平台下golang使用LiteIDE实现跨平台编译
- 编译安装golang1.7及golang程序的交叉编译
- Golang 如何在windows平台下使用LiteIDE交叉编译linux执行程序
- 安卓下 root 后运行 golang 编译的程序
- [Golang]如何在golang程序中自动获取编译时间的方法
- golang的交叉编译
- 在ARM平台上编译安装golang
- 跨平台的编译
- WinCE平台的程序编译到Win32平台下运行
- WinCE平台的程序编译到Win32平台下运行
- WinCE平台的程序编译到Win32平台下运行
- 《JavaScript权威指南》学习笔记——类型,变量与值
- Android TextWatcher监控EditText中的输入内容并限制其输入字符个数
- 关于问题的定位
- java 微信自定义菜单 java微信接口开发 公众平台 SSM redis shiro 多数据源
- [翻译]斯坦福CS20SI:基于Tensorflow的深度学习研究课程笔记,Lecture note 1: Introduction to TensorFlow
- golang程序的跨平台编译
- java自适应响应式 企业网站源码 SSM 生成静态化 手机 平板 PC
- drools用户指南----Methods vs Rules
- 结构风险最小化
- ppm略解
- java 设计模式 代理模式
- 小文件转Base64String工具类
- BZOJ3944: Sum 杜教筛
- java面试题系列(2)