[原创] STM32MP157A-DK1测评+GO语言web服务(5)

bigbat   2020-3-30 09:42 楼主

现在很多带网口的嵌入设备提供有web方式的配置工具。由于最近在了解GO语言,有资料说GO语言的跨平台特性非常的好,性能也十分的优秀。于是就想试着在开发板上看看不能否运行GO的程序。
本测试使用的是golang 1.13.5版本,资料上说只有1.5版以上的GO才支持交叉编译。这一点需要注意

package main

import (
     "fmt"
     "net/http"
)

func handler(w http.ResponseWriter, r *http.Request){
    fmt.Fprintf(w, "Hi, This is an example of http service in golang!")
}

func main() {
     http.HandleFunc("/", handler)
     http.ListenAndServe(":8080", nil) 
}


我的GO环境是已经测试好的就直接写代码了。
编译过程
设置环境:
set GOOS=linux 
set GOARCH=arm 
set GOARM=7 
环境参数GOOS=linux 是指定平台;GOARCH=arm 指定cpu架构;GOARM=7 指定ARM的指令集;
编译程序
go build helloweb.go

上传文件
scp helloweb root@192.168.0.103:/usr/local
注意换成你机器的IP地址
windows的机器scp传输的文件是没有执行权的!
执行程序

chmod +x helloweb

consol.jpg
可以看见正确的输出了页面。
比较遗憾的是go编写的程序尺寸有点大,我的有6.15M的样子吧。不过用go语言编写的程序功能和性能要好的多。而且功能可以很丰富。开发效率也比较高。go也支持编写动态库,配合C语言可以编写一些比较复杂的程序了。

helloweb.jpg

此内容由EEWORLD论坛网友bigbat原创,如需转载或用于商业用途需征得作者同意并注明出处

回复评论 (5)

弱弱的问一下,这个Go语言,看着跟C语言很像啊

点赞  2020-3-30 10:06
引用: 兰博 发表于 2020-3-30 10:06 弱弱的问一下,这个Go语言,看着跟C语言很像啊

golang语言和C的语法甚至和C++都不像。是一种新的语言。具有函数式编程语言的特性,也可以支持接口和多态。

点赞  2020-3-30 11:23

不错。这板子就是BGA的加上价格也不便宜。 所以难普及。后面看ST怎么推。玩起来好像还很不错。

点赞  2020-4-8 10:56
引用: damiaa 发表于 2020-4-8 10:56 不错。这板子就是BGA的加上价格也不便宜。 所以难普及。后面看ST怎么推。玩起来好像还很不错。

听说ST的百分七十的收入是来自于散户应该太贵不了。而且ST的芯片资料比较开放,我猜想应该是奔着卖芯片去的。板子贵不贵的无所谓了。

点赞  2020-4-8 12:34

嵌入式环境下gc会是个大问题

作为一个菜逼,干货并没有多少。唯一会的就是水,所以回帖水分大。望见谅!
点赞  2020-4-13 18:40
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复