通过docker进行golang交叉编译 到mipsle平台

本文介绍了如何利用Docker解决在Mac上进行Golang向mipsle平台交叉编译的难题。通过创建Ubuntu环境的Dockerfile,安装必要的工具和设置环境变量,然后编译项目并拷贝二进制文件到宿主机,实现交叉编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先为什么会想着用docker来进行交叉编译呢?

  1. 因为Mac的darwin 系统在进行向mipsle平台编译时,很难找到合适的交叉编译链
  2. Linux 平台下比较容易向mipsle平台编译,也有很多博客可以参考

创建Dockerfile文件

FROM ubuntu:18.04

RUN apt-get update && apt-get upgrade -y

RUN apt-get install -y wget
RUN apt-get install -y tar
RUN apt-get install -y vim

RUN wget https://golang.google.cn/dl/go1.18.5.linux-amd64.tar.gz
RUN tar xfz go1.18.5.linux-amd64.tar.gz -C /usr/local

ENV GO111MODULE=on \
    CGO_ENABLED=1 \
    GOOS=linux \
    GOARCH=mipsle \
    CC=/opt/bin/mipsel-linux-uclibc-gcc \
    CXX=/opt/bin/mipsel-linux-uclibc-g++ \
    GOROOT=/usr/local/go \
    GOPATH=$HOME/gowork \
    GOBIN=$GOPATH/bin \

    PATH=/opt/bin \
    PATH=/bin:/usr/bin:$PATH \
    PATH=$GOPATH:$GOBIN:$GOROOT/bin:$PATH


WORKDIR /encryptionGateway

COPY go.mod .
COPY go.sum .
COPY mipsel-linux-uclibc.tar.xz .

RUN tar xvf mipsel-linux-uclibc.tar.xz -C /opt

RUN /usr/local/go/bin/go mod download

COPY . .

RUN 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值