網站首頁 編程語言 正文
一、何為交叉編譯
簡單地說,就是在一個平臺上生成另一個平臺上的可執行代碼。同一個體系結構可以運行不同的操作系統;同樣,同一個操作系統也可以在不同的體系結構上運行。
二、交叉編譯前的準備
本文只介紹Windows平臺下的Golang交叉編譯
安裝TDM-GCC
下載地址:http://tdm-gcc.tdragon.net/download
安裝完成后添加TDM-GCC中bin文件夾進環境變量。
三、簡述交叉編譯
其實保存上面一幅圖即可,需記住三個參數,GOOS(Go的目標系統),GOARCH(GO的目標架構)。
設置完成后通過go env查看當前配置。
注意:在不同的命令提示符(CMD)中或關閉重新打開命令提示符,所設置的GOOS和GOARCH是不互通的。也就是可以把GOOS和GOARCH理解為局部變量,不會保存。Golang默認每次build的都是當前系統和架構。
四、實練
1. 默認編譯
當前是使用默認配置編譯了一個Windows平臺下的exe可執行文件,同樣我們設置GOOS和GOARCH后再編譯看看。
2.交叉編譯一個Arm+Linux
在Windows PowerShell中SET 命令似乎無效,有時間再詳查什么原因,所以這一步用了CMD。
設置完后同樣再運行go bulid即可,就可以得到一個無后綴的linux可執行文件。
小總結
記住3句代碼,及其支持的系統。這個在第三節已經給出。
SET GOOS=xxxSET GOARCH=xxxgo env
原文鏈接:https://blog.csdn.net/hx7013/article/details/91489642
相關推薦
- 2022-04-12 報錯(! [rejected] master -> master (fetch fir
- 2022-04-28 C#網絡編程中常用特性介紹_C#教程
- 2022-06-08 FreeRTOS實時操作系統的任務概要講解_操作系統
- 2022-03-23 CentOS7防火墻和端口相關命令介紹_Linux
- 2022-03-07 axios和ajax的區別點總結_AJAX相關
- 2022-04-15 windows+vscode穿越跳板機調試遠程代碼的圖文教程_python
- 2022-09-10 Python數據結構樹與算法分析_python
- 2023-01-03 Android?自定義Livedata使用示例解析_Android
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支