那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何將Go程序編譯到ELF 1開(kāi)發(fā)板

ElfBoard ? 2024-01-29 10:42 ? 次閱讀

ElfBoard組建的共創(chuàng)社是嵌入式科技創(chuàng)新與學(xué)習(xí)實(shí)踐的前沿陣地,我們有幸見(jiàn)證著每一位共創(chuàng)官積極投身于嵌入式技術(shù)的熱潮中,用實(shí)際行動(dòng)詮釋著探索精神。今天就跟各位小伙伴分享一下共創(chuàng)官是怎樣將Go程序編譯并運(yùn)行在ELF 1開(kāi)發(fā)板上的。

一、在GoLand中配置

(一) 配置SSH連接Ubuntu虛擬機(jī)以及ELF 1開(kāi)發(fā)板

1、打開(kāi)GoLand的設(shè)置選項(xiàng)找到SSH,配置連接到Ubuntu虛擬機(jī)、并測(cè)試連接是否正常。

wKgZomW3BDmAMhIzAADWwLoEOs4762.png

2、同樣配置連接到ELF 1開(kāi)發(fā)板并測(cè)試是否連接正常。

wKgaomW3BL6AB-hjAADNaXEeBSQ864.png

(二) 創(chuàng)建項(xiàng)目編寫(xiě)測(cè)試程序

1、從GoLand中創(chuàng)建項(xiàng)目編寫(xiě)測(cè)試程序如下:

package main import "fmt" func main() { fmt.Println("Hello ELF1 !") }

2、執(zhí)行默認(rèn)配置、查看Windows下輸出正常。

wKgZomW3BVeAYIuqAABMeu2Yecg652.png

(三) 編譯到Ubuntu虛擬機(jī)運(yùn)行

1、在配置選項(xiàng)卡中創(chuàng)建新配置、選擇運(yùn)行于第一步配置好的Ubuntu虛擬機(jī)并且在管理目標(biāo)中配置好虛擬機(jī)中的項(xiàng)目存放路徑。

wKgaomW3Ba-APfcqAADwHXONzIY129.pngwKgZomW3BkyABHbsAADUe3RwIZo189.png

2、編譯執(zhí)行查看結(jié)果:可以看到Ubuntu項(xiàng)目目錄下已經(jīng)有編譯好的程序,以及運(yùn)行結(jié)果。

wKgZomW3CB2AF79hAAB0V1R_vZA517.png

3、在Ubuntu中再次確認(rèn),打開(kāi)項(xiàng)目目錄,執(zhí)行程序,查看結(jié)果。

wKgaomW3CHWAXWz4AACCwhFTXMI157.png

(四) 編譯到開(kāi)發(fā)板運(yùn)行

從第三部分可以看到直接在GoLand中配置編譯到遠(yuǎn)程目標(biāo)機(jī)是非常簡(jiǎn)單的,但是很可惜在ELF 1開(kāi)發(fā)板上不能直接這樣做。因?yàn)閰⒖伎焖賳?dòng)手冊(cè)開(kāi)發(fā)板默認(rèn)配置是沒(méi)有sftp的,只有ftp,而GoLand依賴于sftp,所以不能直接這樣配置。

wKgaomW3CPmAEgt4AAAn20I6gJo621.png

所以就需要Go的環(huán)境變量來(lái)使其編譯出目標(biāo)機(jī)可執(zhí)行的程序。先配置一下編譯到Ubuntu虛擬機(jī)測(cè)試一下。

1、先配置編譯到Linux平臺(tái)測(cè)試,打開(kāi)配置,新建一個(gè)配置。運(yùn)行于選本地機(jī)器,選擇輸出目錄到項(xiàng)目下,配置Go的環(huán)境GOOS=linux

wKgaomW3CXyAGTFOAAGAIbTMcG8149.png

2、編譯可以看到target目錄下生成的Linux程序,上傳到Ubuntu虛擬機(jī)中測(cè)試。

wKgaomW3CkqAP8whAACFFv3MQn0891.png

3、可以看到測(cè)試結(jié)果正常。

現(xiàn)在就可以正式配置編譯到開(kāi)發(fā)板啦。

1、新建配置,添加Go環(huán)境 GOOS=linux;GOARCH=arm;GOARM=7

wKgZomW3CpqASaTCAAF7qD-6Uhk190.png

2、運(yùn)行配置,執(zhí)行編譯。

wKgaomW3DBqAbSMjAAAhThORc7w743.png

3、上傳到開(kāi)發(fā)板、修改可運(yùn)行權(quán)限,這里直接配置為777,運(yùn)行查看結(jié)果。

wKgaomW3Dd2AKMFtAAFVnliXyzs458.png

wKgaomW3DjiANvlnAAEmBkh-Ocs916.png

結(jié)果正確,程序正常運(yùn)行!!


二、使用Gin框架編寫(xiě)一個(gè)簡(jiǎn)單的Web后端

繼續(xù)嘗試編寫(xiě)一個(gè)簡(jiǎn)單的Web后端服務(wù),使用Gin Web Framework。

官網(wǎng):gin-gonic.com/zh-cn/

文檔:gin-gonic.com/zh-cn/docs/

(一) 新建項(xiàng)目、編寫(xiě)程序

1、新建項(xiàng)目,安裝Gin。

go get -u github.com/gin-gonic/gin

2、編寫(xiě)簡(jiǎn)單示例:

package main import ( "github.com/gin-gonic/gin" ) func main() { // 創(chuàng)建一個(gè)默認(rèn)的路由引擎 r := gin.Default() // GET:請(qǐng)求方式;/hello:請(qǐng)求的路徑 // 當(dāng)客戶端以GET方法請(qǐng)求/hello路徑時(shí),會(huì)執(zhí)行后面的匿名函數(shù) r.GET("/hello", func(c *gin.Context) { // c.JSON:返回JSON格式的數(shù)據(jù) c.JSON(200, gin.H{ "message": "Hello world!", }) }) // 啟動(dòng)HTTP服務(wù),默認(rèn)在0.0.0.0:8080啟動(dòng)服務(wù) r.Run() }

3、在Windows中測(cè)試程序是否正確,首先啟動(dòng)服務(wù),使用ApiFox測(cè)試,可以看到程序正常。

wKgaomW3DuGAFZLiAADo6M5upJ4733.pngwKgZomW3DzGARBV6AAE3YCvlmUU520.png

(二) 編譯到開(kāi)發(fā)板并測(cè)試

1、同樣新建配置,添加Go環(huán)境GOOS=linux;GOARCH=arm;GOARM=7

2、執(zhí)行編譯、拷貝到ELF 1開(kāi)發(fā)板、修改可執(zhí)行權(quán)限。

wKgaomW3D3GAfkbsAAD5oQf5ULU548.png

3、運(yùn)行服務(wù),并測(cè)試:

wKgaomW3D9iAbLbTAADw36lSM-Q605.pngwKgZomW3EB-ABRQbAAMT2Hwz8o4370.png

可以看到,服務(wù)正常運(yùn)行,請(qǐng)求回應(yīng)也正常。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5092

    文章

    19177

    瀏覽量

    307653
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11345

    瀏覽量

    210387
  • 學(xué)習(xí)開(kāi)發(fā)板

    關(guān)注

    0

    文章

    10

    瀏覽量

    303
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何將u-boot.2022.10版本移植imx6ull開(kāi)發(fā)板

    今天給大家講一講如何將u-boot.2022.10版本移植imx6ull開(kāi)發(fā)板上。
    發(fā)表于 07-12 14:57 ?1527次閱讀
    <b class='flag-5'>如何將</b>u-boot.2022.10版本移植<b class='flag-5'>到</b>imx6ull<b class='flag-5'>開(kāi)發(fā)板</b>

    ELF 1技術(shù)貼|在NXP源碼基礎(chǔ)上適配開(kāi)發(fā)板的按鍵功能

    ELF1開(kāi)發(fā)板。接下來(lái),我們詳細(xì)闡述適配過(guò)程中關(guān)于按鍵功能實(shí)現(xiàn)的完整步驟。值得一提的是,ELF1開(kāi)發(fā)板上預(yù)置了標(biāo)識(shí)為K
    的頭像 發(fā)表于 03-08 16:58 ?1008次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b>技術(shù)貼|在NXP源碼基礎(chǔ)上適配<b class='flag-5'>開(kāi)發(fā)板</b>的按鍵功能

    嵌入式學(xué)習(xí)-ElfBoard ELF 1開(kāi)發(fā)板-共創(chuàng)官學(xué)習(xí)筆記分享|Go程序編譯ELF 1開(kāi)發(fā)板

    運(yùn)行結(jié)果。3、在Ubuntu中再次確認(rèn),打開(kāi)項(xiàng)目目錄,執(zhí)行程序,查看結(jié)果。 (四) 編譯開(kāi)發(fā)板運(yùn)從第三部分可以看到直接在GoLand中配置編譯
    發(fā)表于 02-21 10:22

    飛凌ElfBoard ELF 1板卡-如何在ELF 1開(kāi)發(fā)板上實(shí)現(xiàn)對(duì)java的支持

    Java作為一種功能強(qiáng)大且廣泛應(yīng)用的編程語(yǔ)言,具有廣泛的適應(yīng)性和實(shí)用性。在ELF 1開(kāi)發(fā)板上集成Java支持,無(wú)疑賦予嵌入式開(kāi)發(fā)者更廣闊的
    發(fā)表于 03-20 09:51

    飛凌嵌入式ElfBoard ELF 1板卡-spi編程示例之開(kāi)發(fā)板測(cè)試

    )輸入命令。 (四)編譯無(wú)錯(cuò)誤將生成elf1_cmd_spi可執(zhí)行文件。(五)將可執(zhí)行文件拷貝開(kāi)發(fā)板中,例如/home/root 路徑下。(六)為了方便測(cè)量,我們提供了一個(gè)專門測(cè)試S
    發(fā)表于 11-08 16:43

    飛凌嵌入式ElfBoard ELF 1板卡-運(yùn)動(dòng)追蹤之開(kāi)發(fā)板測(cè)試

    編譯elf1_cmd_icm20607程序(一)該虛擬機(jī)需要安裝對(duì)應(yīng)開(kāi)發(fā)板的GCC編譯器(如果使用我們的
    發(fā)表于 12-04 10:22

    嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-運(yùn)動(dòng)追蹤之開(kāi)發(fā)板測(cè)試

    編譯elf1_cmd_icm20607程序 (一)該虛擬機(jī)需要安裝對(duì)應(yīng)開(kāi)發(fā)板的GCC編譯器(如果使用我們的
    發(fā)表于 12-05 10:31

    如何將STemWin移植STM32F1xx開(kāi)發(fā)板中?及如何使用STemWin?

    開(kāi)發(fā)指南講解如何將 STemWin 移植普中 STM32F1xx 開(kāi)發(fā)板,以及如何使用 STemWin 中的各個(gè)控件,讓大家能夠設(shè)計(jì)出漂
    發(fā)表于 10-12 08:00 ?19次下載

    大咖教你如何編譯OpenHarmony并燒錄到開(kāi)發(fā)板

    在上一篇【博流 BL-HWC-G1 開(kāi)發(fā)板試用】開(kāi)箱及編譯燒錄官方程序(BL602 IoT SDK)中,我們講了這塊開(kāi)發(fā)板使用官方SDK進(jìn)行
    的頭像 發(fā)表于 12-01 16:56 ?3809次閱讀
    大咖教你如何<b class='flag-5'>編譯</b>OpenHarmony并燒錄到<b class='flag-5'>開(kāi)發(fā)板</b>

    關(guān)于ELF1/ELF1S開(kāi)發(fā)板的音頻接口,你需要知道的都在這!

    音樂(lè)可以平凡的畫(huà)面賦予深厚的意義,那么音頻接口就是這個(gè)支點(diǎn);今天就來(lái)給大家詳細(xì)介紹一下ELF1/ELF1S開(kāi)發(fā)板的音頻接口。ELF1/
    的頭像 發(fā)表于 10-31 14:10 ?753次閱讀
    關(guān)于<b class='flag-5'>ELF1</b>/<b class='flag-5'>ELF1</b>S<b class='flag-5'>開(kāi)發(fā)板</b>的音頻接口,你需要知道的都在這!

    ELF 1技術(shù)貼|在NXP源碼基礎(chǔ)上適配ELF 1開(kāi)發(fā)板的LED功能

    本次源碼適配工作是在NXPi.MX6ULLEVK評(píng)估的Linux內(nèi)核源碼(特定版本:Linux-imx_4.1.15)基礎(chǔ)上進(jìn)行的。主要目標(biāo)是調(diào)整功能接口引腳配置,以適應(yīng)ELF1開(kāi)發(fā)板。下面以
    的頭像 發(fā)表于 12-29 10:04 ?920次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b>技術(shù)貼|在NXP源碼基礎(chǔ)上適配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>開(kāi)發(fā)板</b>的LED功能

    學(xué)習(xí)筆記分享|使用C庫(kù)函數(shù)控制ELF 1開(kāi)發(fā)板的LED

    ELF1/ELF1S開(kāi)發(fā)板及顯示屏)在嵌入式Linux系統(tǒng)開(kāi)發(fā)中,通過(guò)編程控制硬件資源是至關(guān)重要的技能之一,今天跟各位小伙伴分享一篇專注于介紹如何使用C庫(kù)函數(shù)控制
    的頭像 發(fā)表于 01-19 11:12 ?627次閱讀
    學(xué)習(xí)筆記分享|使用C庫(kù)函數(shù)控制<b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>開(kāi)發(fā)板</b>的LED

    ELF 1技術(shù)貼|如何將Python3.6.9移植開(kāi)發(fā)板

    如何進(jìn)行交叉編譯并移植ELF1開(kāi)發(fā)板上。在網(wǎng)址:https://www.python.org/ftp/python/下載Python-3.6.9.tar.xz壓縮
    的頭像 發(fā)表于 02-22 14:06 ?474次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b>技術(shù)貼|<b class='flag-5'>如何將</b>Python3.6.9移植<b class='flag-5'>到</b><b class='flag-5'>開(kāi)發(fā)板</b>上

    ELF技術(shù)貼|如何在開(kāi)發(fā)板上實(shí)現(xiàn)對(duì)Java的支持

    Java作為一種功能強(qiáng)大且廣泛應(yīng)用的編程語(yǔ)言,具有廣泛的適應(yīng)性和實(shí)用性。在ELF1開(kāi)發(fā)板上集成Java支持,無(wú)疑賦予嵌入式開(kāi)發(fā)者更廣闊的選擇空間,今天就為各位小伙伴詳細(xì)解析如何在
    的頭像 發(fā)表于 03-13 16:47 ?545次閱讀
    <b class='flag-5'>ELF</b>技術(shù)貼|如何在<b class='flag-5'>開(kāi)發(fā)板</b>上實(shí)現(xiàn)對(duì)Java的支持

    linux開(kāi)發(fā)板如何編譯curl

    在Linux開(kāi)發(fā)板編譯 curl 庫(kù)通常涉及幾個(gè)步驟,包括準(zhǔn)備開(kāi)發(fā)環(huán)境、下載源代碼、配置編譯選項(xiàng)以及執(zhí)行
    的頭像 發(fā)表于 08-30 15:33 ?789次閱讀
    香港六合彩开| 综合百家乐博彩论坛| 百家乐官网发牌器8副| 威尼斯人娱乐公司| 娱乐城百家乐论坛| 百家乐官网电投| 博彩网络| 威尼斯人娱乐城送钱| 属狗与属猪能做生意吗| 百家乐官网娱乐城反水| 澳门顶级赌场娱乐场| 在线百家乐游戏软件| 海港城百家乐官网的玩法技巧和规则 | 百家乐官网玩法官网| 澳门百家乐官网海洋阿强| bet365娱乐场| 百家乐娱乐礼金| 百家乐官网最新套路| 精英娱乐城开户| 威尼斯人娱乐城怎么赢| 百家乐官网有作弊的吗| 悠哉棋牌游戏大厅| 索雷尔百家乐的玩法技巧和规则| 黄金城百家乐游戏| 自贡百家乐官网赌场| 皇冠备用投注网| 大发888游戏下载平台| 悦榕庄百家乐的玩法技巧和规则| 百家乐赢钱公式冯耕| 红桃K百家乐官网娱乐城| 百家乐官网庄家必赢诀窍| 百家乐官网庄闲机率| k7娱乐| 大发888网站打不开| 郑州百家乐的玩法技巧和规则| 百家乐的打法技巧| 将军百家乐官网的玩法技巧和规则| 百家乐官网注册18元体验金| 百家乐官网视频打麻将| 芷江| 圣淘沙娱乐|