golang1.9编译openwrt运行程序 ,window7下liteide编译

lxsky · · 3106 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

网上看了好多资料发现都很过时了,基本都是用的https://github.com/gomini/go-mips32编译的。

但是go1.9早就支持mips了,设置好编译参数,开始build,这时在go/pkg下会出现linux_mips目录,就是编译环境,其他的一样。

  • GOOS是你的应用程序将要运行平台的操作系统
  • GOARCH是你的应用程序将要运行平台的处理器架构。

有效的$GOOS$GOARCH组合如下:

    $GOOS        $GOARCH
    android     arm
    darwin      386
    darwin      amd64
    darwin      arm
    darwin      arm64
    dragonfly   amd64
    freebsd     386
    freebsd     amd64
    freebsd     arm
    linux       386
    linux       amd64
    linux       arm
    linux       arm64
    linux       ppc64
    linux       ppc64le
    linux       mips
    linux       mipsle
    linux       mips64
    linux       mips64le
    netbsd      386
    netbsd      amd64
    netbsd      arm
    openbsd     386
    openbsd     amd64
    openbsd     arm
    plan9       386
    plan9       amd64
    solaris     amd64
    windows     386
    windows     amd64

1.首先通过putty连接到路由器,看看路由器cpu架构,我这里连接wr720n-v3,如下图,可见该路由器cpu是mips架构

 cat /proc/cpuinfo

2.go可以通过GOARCH和GOOS设置编译后程序的运行架构和系统,所以在编译时设置环境如下:

我是在window7下liteide编译,直接加个环境文件(liteide32.1\share\liteide\liteenv\linux32-mips.env):

GOARCH=mips
GOOS=linux

3.golang编写如下代码,直接build,不要run:

package main

import (
    "fmt"
    "time"
)

func main() {
    for {
        fmt.Println("1111")
        time.Sleep(1 * time.Second)
        for {
            time.Sleep(1 * time.Second)
            fmt.Println("2222")
            break
        }
    }
}

4.用WinSCP将程序文件“openwrtTest“放到openwrt系统里面,这里放置到/tmp下,设置文件权限:

chmod 777 -R /tmp/openwrtTest

5.运行文件,顺利搞定。这里如果已经进入tmp目录的话用./openwrtTest

/tmp/openwrtTest

 


有疑问加站长微信联系(非本文作者)

本文来自:博客园

感谢作者:lxsky

查看原文:golang1.9编译openwrt运行程序 ,window7下liteide编译

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3106 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传