首页 > 系统相关 >如何在Windows环境下将Go程序以Linux环境编译

如何在Windows环境下将Go程序以Linux环境编译

时间:2023-03-14 16:45:43浏览次数:60  
标签:Windows 编译 Step Goland Linux Go WSL2 目录

前言

因为最近有需要将项目编译成二进制文件上传到线上服务器进行部署的需求,发现Windows已经无法像之前切换GOOS来达到目的了,特此记录一下半天的成果。

方案

在一天的寻找中我找到了两个办法来达成目的

方法一 使用Goland自带连接WSL2选择Output目录进行编译

说来这个非常凑巧。原本我是打算搜索wsl2如何使用Goland的,结果浏览器第一个就给我跳出来官方的Goland连接WSL2的教程...

至于为什么是WSL2呢,是因为Goland对于WSL 1是不支持Debug模式的,Goland没有Debug的话其实就是一个很普通的IDE罢了..所以这里统一采用WSL2

其实官方已经讲的非常清楚了,我大概翻译一下

Step 1

打开Goland 点击Runing ToolsRunning Counfigurations的下拉小三角,选择Edit Configuration

image-20230314154958181

Step 2

进入到Run/Debug Configurations界面之后,在Run on选项选择Create New Targets——WSL...

image-20230314155256088

Step 3

选择你的WSL2的版本,之后点Next(如果没有安装WSL2的话可以看这篇教程

image-20230314155546134

Step 4

发现之前的图好像是GoTest的,不过前几步没啥不同,这里用Go Build继续讲解,接下来就选择你设置好的Target,选择Output directory之后OK即可。(这个目录是输出二进制编译后的文件的目录

image-20230314161906029

之后SHIFT + F10运行你刚设置好的Configuration就好啦~

可以发现文件已经在目录下了

image-20230314162126788

方法二 采用WSL2之后进入对应目录进行Go build

这个方法主要是麻烦在怎么在WSL2下使用Git与go mod tidy,关于这一点我特地又写了一篇WSL2使用Git与go mod tidy

参考:

Golang 在windows下编译Linux下可执行文件

Compile and run Go code using WSL 2 and GoLand

标签:Windows,编译,Step,Goland,Linux,Go,WSL2,目录
From: https://www.cnblogs.com/Vikyanite/p/17215433.html

相关文章

  • Linux & 标准C语言学习 <DAY13>
    一、字符串  字符:类字形单位或符号,包括字母、数字、运算符号、标点符号和其他符号,以及一些功能性符号  串:是一种数据结构,存储类型相同的若干个数据,对于串型结构......
  • linux基础day06:文件管理02
    文件管理02拷贝cp#拷贝copy#语法cp[OPTION]...[-T]SOURCEDESTcp选项源文件目标文件cp[OPTION]...SOURCE...DIREC......
  • Linux文本编辑工具Vim的常用快捷键
    Vim的三种常用模式及常用快捷键Vim有三种模式:一般模式、编辑模式和命令行模式一般模式移动光标按键作用b或者向左的方向键光标向左移动一个字符l或者向右......
  • windows系统mysql定时备份
    如下:一、创建bat任务脚本1.新建txt文档2.打开txt文档,并粘贴入以下内容3.按照自己的需求对内容进行修改,并删除掉//后内容以及中文空格,否则会运行失败4.保存,并将文件后......
  • linux(wsl2 ubuntu) mariadb重置密码
    可用于不知道默认密码或忘记密码等场景操作环境是WSL2版本ubuntu22停止MariaDB服务 sudoservicemariadbstop2.在不加载授权表的情况下启动MariaDB服务......
  • Linux 第02章 基本 Linux 命令
    软硬件的交互硬件->内核->内核API->SHELL程序(bash/zsh/csh/sh)bash解释器命令参数对象touch/mkdir/useradd/rm等命令指要做的动作。参数指对于命令的......
  • Go package和gomode
    同一个目录下,package包名需要相同,通常都有父级目录文件名为包名packageGotest导入包import( "fmt" "其他...")别名import( "fmt" //别名"包所......
  • Ubuntu22.10 使用命令安装 MongoDB6.0 并配置
     安装mongodbapt-getinstallgnupgwget-qO-https://www.mongodb.org/static/pgp/server-6.0.asc|apt-keyadd-echo"deb[arch=amd64,arm64]https://repo......
  • DBeaver Ultimate Edtion 23 Multilingual (macOS, Linux, Windows) - 通用数据库工具
    请访问原文链接:https://sysin.org/blog/dbeaver-23/,查看最新版。原创作品,转载请保留出处。作者主页:www.sysin.org通用数据库工具DBeaver是一个通用的数据库管理工具,适......
  • linux 安装nodejs
    https://www.cnblogs.com/veezeng/p/11164066.htmlhttps://nodejs.org/dist/......