本文來源電子發燒友社區,作者:劉建華, 帖子地址:https://bbs.elecfans.com/jishu_2303426_1_1.html
【資料獲取】:
*附件:OKA40i-C、OKT3-C開發板 產品資料發布記錄-2022.07.23(1).pdf
這里給出了所有需要的資料,大家可以自行下載。我主要下載了官方已經建立好環境的ubuntu虛擬機包,還有就是“OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用戶資料-20220322”
【1】建立編譯環境
1、安裝ubuntu虛擬機,由于我在以前的開發板試用中已經安裝好了VMwar。這里就不再展示,如果沒有安裝的,請自行根據《OKA40i-C&OKT3-C_Qt5.9+linux-3.10用戶編譯手冊_V1.0_20211218.pdf》的第一、三章來安裝,手冊有詳細的安裝說明:
2、我這里直接按照手冊的第二章,直接就有現成的環境,應該很快就可以。如果有什么不明白,可以聯系我交流。安裝好后打開虛擬機:
3、仔細閱讀編譯手冊《第四章:linux編譯篇》,并一步步實現。
-
先在虛擬機中的/home/目錄下新建work文件夾,并把OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用戶資料-20220322Linux源碼目錄下的xaa、xab拷貝到虛擬機work目錄下面:
將共享文件夾中的源碼拷貝到 ubuntu 的/home/forlinx/work 目錄下并校驗。
合并源碼,進行校驗和解壓。
解壓后進入lichee目錄下面:
這個源碼包那是真的占資源呀,差不多70G,所以大家要準備一個大的硬盤,要不一下就爆炸。
解壓文件系統:(注意)這里文件里的解壓文件跟實際的不同,這里是rootfs-a40i.tar.gz。
到這里,源碼解壓完畢,我發現我的硬盤只有4G不到了,趕緊把虛擬機換個硬盤。。。。
換了硬盤接著來編譯源碼:
按照《手冊》4.2.1一步步設置:
然后編譯內核:
forlinx@ubuntu:~/work/lichee$ sudo ./build.sh -m kernel
然后就要耐心等待N久,看各人的電腦來決定:
然后生成rootfs.ext4、鏡像打包:
打包:
打包結束。
致此源碼的編譯到這里就結束了。這是我第一次編譯源碼,教程寫得非常詳細,大家應該對照起來沒有什么問題。這里建議的就是硬盤一定要留100G。
當然大家要是不想折騰源碼編譯,在OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用戶資料-20220322Linux鏡像目錄下面有編譯好的好些包,大家可以自己選擇下載:
【鏡像燒寫】
1、將生成的sun8iw11p1_linux_OKA40i_C_uart0-1024x600.img文件拷到win下面。
2、安裝PhoenixSuit。安裝包在OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用戶資料-20220322Linux工具目錄中,安裝過程省。。。
3、燒寫,要多試幾次,我也是弄了好多燒才
【編譯自己的程序】
在work目錄下新建一個helloworld文件夾,在helloworld文件夾內新建helloworld.c,寫代碼如下:
#include
int main(void)
{
printf("hellowrld!rn");
printf("hello OKA40i-Crn");
return 0;
}
在lichee/buildroot-201611/target/user_rootfs_apps/cmd/subs下的rtc中復制一個makefile文件過來,并修改為:
DEST_DIR ?=_install
#CC ?=arm-linux-gcc
CC =arm-linux-gnueabihf-gcc-5.3.1
build:
@$(CC) -o $(TARGET) helloworld.c
hold:
[url=home.php?mod=space&uid=70594]@echo[/url] "helloworld hold[skip]"
install:
[url=home.php?mod=space&uid=2293869]@MKDIR[/url] -p $(DEST_DIR)
@cp $(TARGET) $(DEST_DIR)
uninstall:
@rm -fr $(DEST_DIR)/$(TARGET)
distclean: uninstall
@rm -fr $(TARGET)
@rm -fr _install
然后執行make:
沒有報錯,在當前目錄下生成的helloworld文件:
把hellowrld拷到開發板下面,修改權限就可以運行了:
【總結】經過好幾天的文章閱讀,終于學會了源碼編譯、程序的單獨編譯。這里非常感謝“飛凌A40i開發板評測技術交流群”里面的大佬 @李海,幫助我在編譯上找出了問題。
-
飛凌
+關注
關注
0文章
134瀏覽量
16135
發布評論請先 登錄
相關推薦
評論