在centos上交叉编译柏晓技术开源终端上网行为管理服务器windows版本包

前面几章,分别介绍了在windows下编译开源终端上网行为管理服务器windows版本包与在centos上编译开源终端上网行为管理服务器linux版本包,这里主要介绍下在centos上交叉编译windows版本包,这样的话,就不需要搭建两个编译环境了,只需要在一个centos环境上就可以编译出linux与windows的版本包,下面具体说下步骤:

1、先安装好centos环境,这里不具体展开,可以参考(47条消息) 开源终端上网行为管理服务器编译环境搭建_飞宇2010的博客-CSDN博客或者自行百度参考。

2、在centos环境搭建好后,在centos先下载mingw-w64,mingw-w64是linux环境编译windows包的库,先从github上下载mingw-w64编译包,git clone https://github.com/Zeranoe/mingw-w64-build.git,然后直接编译mingw-w64,注意在编译时需要至少预留5G以上的空间来编译,否则会报空间不足的问题,编译结果如下:

[root@localhost mingw-w64-build-master]# ./mingw-w64-build x86_64
(1/20): downloading MinGW-w64 source
(2/20): downloading Binutils source
(3/20): downloading GCC source
(4/20): downloading config.guess
(5/20): (x86_64): configuring Binutils
(6/20): (x86_64): building Binutils
(7/20): (x86_64): installing Binutils
(8/20): (x86_64): configuring MinGW-w64 headers
(9/20): (x86_64): installing MinGW-w64 headers
(10/20): (x86_64): configuring GCC
(11/20): (x86_64): building GCC (all-gcc)
(12/20): (x86_64): installing GCC (install-gcc)
(13/20): (x86_64): configuring MinGW-w64 CRT
(14/20): (x86_64): building MinGW-w64 CRT
(15/20): (x86_64): installing MinGW-w64 CRT
(16/20): (x86_64): configuring winpthreads
(17/20): (x86_64): building winpthreads
(18/20): (x86_64): installing winpthreads
(19/20): (x86_64): building GCC
(20/20): (x86_64): installing GCC
complete, to use MinGW-w64 everywhere add '/root/.zeranoe/mingw-w64/x86_64/bin' to PATH.

3、在搭建好编译环境后,从https://github.com/boxiaojishu/deskvideosys上面下载源代码到环境上,修改go env的环境变为windows,主要是如下几个参数

go env -w GOOS=windows
go env -w GOHOSTOS=windows
go env -w CGO_ENABLED=1

export PATH=$PATH:/root/.zeranoe/mingw-w64/x86_64/bin
go env -w CC=x86_64-w64-mingw32-gcc

4、 然后执行npm run build:win开始编译windows版本包,执行完成以后,就可以看到这个windows版本包了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是在 Windows 上使用 GoLand 进行交叉编译,在 CentOS 上运行 Go 程序的详细步骤: 1. 首先,在 Windows 上安装 GoLand 和 Go 环境,并确保 GoLand 可以正常使用。 2. 在 GoLand 中创建一个新的 Go 项目,并在项目中编写您的 Go 代码。 3. 在 GoLand 中打开终端,输入以下命令,安装交叉编译工具链: ``` go get golang.org/x/sys/windows go get github.com/mattn/go-sqlite3 GOOS=linux GOARCH=amd64 go get github.com/mattn/go-sqlite3 ``` 这些命令将安装必要的工具链和库,以便在 Windows编译 Linux/Unix 系统下的可执行文件。 4. 在 GoLand 中打开项目设置,选择左侧的“Go”选项,然后选择“Go Build Tags”选项卡。在这里,您需要添加一个标记来指定您要编译的目标操作系统和架构。例如,如果您要在 CentOS 7 上运行您的程序,您需要添加以下标记: ``` linux amd64 ``` 5. 在 GoLand 中打开终端,输入以下命令,以交叉编译您的程序: ``` go build -tags="linux amd64" -o myprogram-linux-amd64 ``` 这将在 Windows编译您的程序,并将可执行文件输出到当前目录下的“myprogram-linux-amd64”文件中。这个文件是在 CentOS 上运行的二进制文件。 6. 在 CentOS 上,将“myprogram-linux-amd64”文件复制到您的服务器上,并运行以下命令,以确保它具有可执行权限: ``` chmod +x myprogram-linux-amd64 ``` 7. 最后,在 CentOS 上运行您的程序: ``` ./myprogram-linux-amd64 ``` 如果一切顺利,您的程序应该成功运行,并输出您期望的结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值