日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

如何使用TinyVision去手動(dòng)構(gòu)建Linux 6.1+Debian 12鏡像呢?

全志在線(xiàn) ? 來(lái)源:全志在線(xiàn) ? 2024-03-15 18:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

SyterKit是一個(gè)純裸機(jī)框架,可以用于TinyVision或者v851se/v851s/v853等芯片的開(kāi)發(fā)板,SyterKit使用CMake作為構(gòu)建系統(tǒng)構(gòu)建,支持多種應(yīng)用與多種外設(shè)驅(qū)動(dòng)。同時(shí)SyterKit也具有啟動(dòng)引導(dǎo)的功能,可以替代U-Boot實(shí)現(xiàn)快速啟動(dòng)。

在開(kāi)始系統(tǒng)構(gòu)建前需要準(zhǔn)備TinyVision開(kāi)發(fā)板及如下線(xiàn)材,

9c2ac974-e2b4-11ee-a297-92fbcf53809c.jpg

使用40Gbps數(shù)據(jù)線(xiàn)連接TinyVision開(kāi)發(fā)板和TypeC-SUB調(diào)試器,如下圖所示:

9c8ef804-e2b4-11ee-a297-92fbcf53809c.jpg

使用兩條Type-C連接TypeC UART調(diào)試器和電腦端,連接完成后即可按照下文步驟構(gòu)建系統(tǒng)。

從零構(gòu)建SyterKit

構(gòu)建 SyterKit 非常簡(jiǎn)單,只需要在 Linux 操作系統(tǒng)中安裝配置環(huán)境即可編譯。SyterKit 需要的軟件包有:

gcc-arm-none-eabi

CMake

對(duì)于常用的 Ubuntu 系統(tǒng),可以通過(guò)如下命令安裝:

sudo apt-get update
sudo apt-get install gcc-arm-none-eabi cmake build-essential -y

然后新建一個(gè)文件夾存放編譯的輸出文件,并且進(jìn)入這個(gè)文件夾

mkdir build
cd build

然后運(yùn)行命令編譯 SyterKit

cmake ..
make
9cba82ee-e2b4-11ee-a297-92fbcf53809c.png ??

編譯后的可執(zhí)行文件位于 build/app 中,這里包括 SyterKit 的多種APP可供使用。

9d16687a-e2b4-11ee-a297-92fbcf53809c.png

這里我們使用的是 syter_boot 作為啟動(dòng)引導(dǎo)。進(jìn)入 syter_boot 文件夾,可以看到這些文件

9da4e348-e2b4-11ee-a297-92fbcf53809c.png

由于 TinyVision 是 TF 卡啟動(dòng),所以我們需要用到syter_boot_bin_card.bin

9e1e3af4-e2b4-11ee-a297-92fbcf53809c.png ? ?

編譯Linux-6.1內(nèi)核

由于 Debian 12 配套的內(nèi)核是 Linux 6.1 LTS,所以這里我們選擇構(gòu)建 Linux 6.1 版本內(nèi)核。

搭建編譯環(huán)境

安裝一些必要的安裝包

sudo apt-get update && sudo apt-get install -y gcc-arm-none-eabi gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf build-essential libncurses5-dev zlib1g-dev gawk flex bison quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip lsof

獲取內(nèi)核源碼

內(nèi)核源碼托管在 Github 上,可以直接獲取到,這里使用--depth=1 指定 git 深度為 1 加速下載。

git clone http://github.com/YuzukiHD/TinyVision --depth=1

然后進(jìn)入內(nèi)核文件夾

cd kernel/linux-6.1

配置內(nèi)核選項(xiàng)

應(yīng)用 defconfig

CROSS_COMPILE=arm-linux-gnueabihf- make ARCH=arm tinyvision_defconfig

進(jìn)入menuconfig配置選項(xiàng)

CROSS_COMPILE=arm-linux-gnueabihf- make ARCH=arm menuconfig

進(jìn)入General Setup,

選中Control Group Support,

9e4c146a-e2b4-11ee-a297-92fbcf53809c.png9ef7e89e-e2b4-11ee-a297-92fbcf53809c.png

前往File Systems,

找到FUSE support,

9f054278-e2b4-11ee-a297-92fbcf53809c.png

前往File Systems,

找到Inotify support for userspace,

9f19f1aa-e2b4-11ee-a297-92fbcf53809c.png

編譯內(nèi)核

CROSS_COMPILE=arm-linux-gnueabihf- make ARCH=arm

使用debootstrap

構(gòu)建debian rootfs

下載安裝依賴(lài)環(huán)境

sudo apt install debootstrap qemu qemu-user-static qemu-system qemu-utils qemu-system-misc binfmt-support dpkg-cross debian-ports-archive-keyring --no-install-recommends

生成目標(biāo)鏡像,配置環(huán)境,這里我們生成一個(gè) 1024M 的鏡像文件用于存放 rootfs

dd if=/dev/zero of=rootfs.img bs=1M count=1024
mkdir rootfs
mkfs.ext4 rootfs.img
sudo mount rootfs.img rootfs

這里我們選擇最新的 debian12 (bookwarm) 作為目標(biāo)鏡像,使用清華源來(lái)構(gòu)建,輸出到目標(biāo)目錄 rootfs_data 文件夾中。新版本的 debootstrap 只需要運(yùn)行一次即可完成兩次 stage 的操作,相較于老版本方便許多。

sudo debootstrap --arch=armhf bookworm rootfs_data https://mirrors.tuna.tsinghua.edu.cn/debian/
9f57e104-e2b4-11ee-a297-92fbcf53809c.png ??

等待構(gòu)建完成后,使用chroot進(jìn)入到目錄,這里編寫(xiě)一個(gè)掛載腳本方便掛載使用,新建文件 ch-mount.sh 并寫(xiě)入以下內(nèi)容:

9fa6b2f2-e2b4-11ee-a297-92fbcf53809c.png

然后賦予腳本執(zhí)行的權(quán)限,執(zhí)行掛載,可以看到進(jìn)入了 debian 的 rootfs

9fce320a-e2b4-11ee-a297-92fbcf53809c.png

配置系統(tǒng)字符集,選擇 en_US 作為默認(rèn)字符集,選擇一個(gè)就可以

export LC_ALL=en_US.UTF-8
apt-get install locales
dpkg-reconfigure locales
a001e686-e2b4-11ee-a297-92fbcf53809c.png ? ? ? a080f0ac-e2b4-11ee-a297-92fbcf53809c.png ?

安裝Linux基礎(chǔ)工具

apt install sudo ssh openssh-server net-tools ethtool wireless-tools network-manager iputils-ping rsyslog alsa-utils bash-completion gnupg busybox kmod wget git curl --no-install-recommends

安裝編譯工具

apt install build-essential

安裝Linux nerd工具

apt install vim nano neofetch

設(shè)置本機(jī)入口ip地址

cat < /etc/hosts
127.0.0.1    localhost
127.0.1.1    $HOST
::1       localhost ip6-localhost ip6-loopback
ff02::1     ip6-allnodes
ff02::2     ip6-allrouters
EOF

配置網(wǎng)卡

mkdir -p /etc/network
cat >/etc/network/interfaces <
 

配置DNS地址

cat >/etc/resolv.conf <
 

配置分區(qū)

cat >/etc/fstab <         
/dev/mmcblk0p1 /boot  vfat  defaults        0    0
/dev/mmcblk0p2 /    ext4  defaults,noatime    0    1
EOF

配置root密碼

passwd

配置主機(jī)名

echo TinyVision > /etc/hostname

取消掛載chroot

./ch-mount.sh -u rootfs_data/

拷貝rootfs到鏡像中

sudo cp -raf rootfs_data/* rootfs

取消掛載

sudo umount rootfs

打包固件

完成以上步驟debian rootfs就制作好了。

編譯完成 bootloader,內(nèi)核,rootfs 后,還需要打包固件成為可以 dd 寫(xiě)入的固件,這里我們使用 genimage 工具來(lái)生成構(gòu)建。

生成刷機(jī)鏡像

編譯內(nèi)核后,就可以生成sun8i-v851se-tinyvision.dtb和zImage文件,我們把他們拷貝出來(lái)。

a0d530d6-e2b4-11ee-a297-92fbcf53809c.png

然后將sun8i-v851se-tinyvision.dtb改名為sunxi.dtb,這個(gè)設(shè)備樹(shù)名稱(chēng)是定義在SyterKit源碼中的,如果之前修改了SyterKit的源碼需要修改到對(duì)應(yīng)的名稱(chēng),SyterKit會(huì)去讀取這個(gè)設(shè)備樹(shù)。

然后編寫(xiě)一個(gè)config.txt作為配置文件

[configs]
bootargs=root=/dev/mmcblk0p2 earlyprintk=sunxi-uart,0x02500000 loglevel=2 initcall_debug=0 rootwait console=ttyS0 init=/sbin/init
mac_addr=4a:13f9:79:75
bootdelay=3

安裝genimage作為打包工具。

sudo apt-get install libconfuse-dev #安裝genimage依賴(lài)庫(kù)
sudo apt-get install genext2fs   # 制作鏡像時(shí)genimage將會(huì)用到
git clone https://github.com/pengutronix/genimage.git
cd genimage
./autogen.sh            # 配置生成configure
./configure             # 配置生成makefile
make
sudo make install

編譯后運(yùn)行試一試,這里正常

a106427a-e2b4-11ee-a297-92fbcf53809c.png

編寫(xiě) genimage.cfg 作為打包的配置

a14f8b92-e2b4-11ee-a297-92fbcf53809c.png

由于genimage的腳本比較復(fù)雜,所以編寫(xiě)一個(gè)genimage.sh作為簡(jiǎn)易使用的工具

a17f2c3a-e2b4-11ee-a297-92fbcf53809c.png

準(zhǔn)備完成,文件如下所示

a1a0a072-e2b4-11ee-a297-92fbcf53809c.png

運(yùn)行命令進(jìn)行打包

chmod 777 genimage.sh
./genimage.sh -c genimage.cfg
a0d530d6-e2b4-11ee-a297-92fbcf53809c.png ?

打包完成,可以找到img文件,使用軟件燒錄固件到TF卡上。

a1f41c48-e2b4-11ee-a297-92fbcf53809c.png

本文內(nèi)容均轉(zhuǎn)載自https://www.gloomyghost.com/live/20231220.aspx


審核編輯:劉清

聲明:本文內(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)投訴
  • Linux系統(tǒng)
    +關(guān)注

    關(guān)注

    4

    文章

    617

    瀏覽量

    30176
  • 調(diào)試器
    +關(guān)注

    關(guān)注

    1

    文章

    329

    瀏覽量

    25221
  • TF卡
    +關(guān)注

    關(guān)注

    2

    文章

    93

    瀏覽量

    13043
  • Type-C接口
    +關(guān)注

    關(guān)注

    1

    文章

    154

    瀏覽量

    23204

原文標(biāo)題:使用TinyVision手動(dòng)構(gòu)建Linux 6.1 + Debian 12鏡像

文章出處:【微信號(hào):gh_79acfa3aa3e3,微信公眾號(hào):全志在線(xiàn)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    在基于全志V851se的TinyVision手動(dòng)構(gòu)建 Linux 6.1 + Debian 12 鏡像

    ,所以我們需要用到 syter_boot_bin_card.bin 編譯 Linux-6.1 內(nèi)核 由于 Debian 12 配套的內(nèi)核是 Linux
    發(fā)表于 03-18 10:49

    FlexBuild構(gòu)建Debian 12,在“tflite_ethosu_delegate”上構(gòu)建失敗了怎么解決?

    我們現(xiàn)在正在嘗試FlexBuild 構(gòu)建Debian 12,但它在 “tflite_ethosu_delegate” 上構(gòu)建失敗 我們知道 v24.06 中的
    發(fā)表于 04-01 06:53

    【NanoPi2試用體驗(yàn)】燒寫(xiě)Debian鏡像手機(jī)電腦VNC登錄(六)

    大體相同。相比手機(jī)VNCviewer,電腦端輸入更方便,屏幕更大。 本期討論: 燒寫(xiě)Debian系統(tǒng)后正式進(jìn)入Linux學(xué)習(xí),NanoPi2板載WiFi模塊,支持手機(jī)VNC,有時(shí)間拿上它肯德基,點(diǎn)
    發(fā)表于 01-07 14:00

    如何構(gòu)建一種LINUX下的STM32開(kāi)發(fā)環(huán)境

    怎樣將Arduino遷移到linux?如何構(gòu)建一種LINUX下的STM32開(kāi)發(fā)環(huán)境?
    發(fā)表于 12-13 06:25

    Debian8系統(tǒng)的jessie系統(tǒng)鏡像該怎樣制作

    Debian8系統(tǒng)的jessie系統(tǒng)鏡像該怎樣制作?有哪些制作流程?
    發(fā)表于 03-04 06:32

    如何為 risc-v64 芯片制作 Debian 鏡像

    dd if=/dev/zero of=debian.img bs=1G count=16# 此處鏡像大小為16GBsudo cfdisk debian.img # 可創(chuàng)建兩個(gè)分區(qū), 第一個(gè)分區(qū)
    發(fā)表于 08-24 16:42

    debian安裝教程

    如果你使用Debian軟件包管理器來(lái)管理Linux軟件,應(yīng)該詳細(xì)了解Debian軟件倉(cāng)庫(kù)的原理,這有助于使用Linux命令將讓你更容易管理Debia
    的頭像 發(fā)表于 02-23 09:14 ?1.2w次閱讀

    為VisionFive星光板上創(chuàng)建Debian系統(tǒng)鏡像

    在RISC-V 星光板VisionFive上創(chuàng)建Debian/Linux系統(tǒng)
    發(fā)表于 03-09 20:52 ?1263次閱讀
    為VisionFive星光板上創(chuàng)建<b class='flag-5'>Debian</b>系統(tǒng)<b class='flag-5'>鏡像</b>

    鏡像構(gòu)建Dockerfile的介紹

    Dockerfile 是一個(gè)用來(lái)構(gòu)建鏡像的文本文件,文本內(nèi)容包含了一條條構(gòu)建鏡像所需的指令和說(shuō)明。
    的頭像 發(fā)表于 09-06 09:36 ?2105次閱讀

    Armbian 23.02 \Linux 6.1 發(fā)布

    為Arm和RISC-V單板計(jì)算機(jī)提供映像的兩個(gè)最受歡迎的項(xiàng)目發(fā)布了新的更新,Armbian 23.02增加了基于Linux 6.1Debian和Ubuntu映像,DietPi 8.14增加了
    的頭像 發(fā)表于 03-02 15:44 ?3958次閱讀

    linux鏡像制作工具

    自定義的虛擬機(jī)鏡像。下面將介紹幾種常用的Linux鏡像制作工具,并詳細(xì)解釋它們的特點(diǎn)和使用方法。 一、Debian Live-build Debia
    的頭像 發(fā)表于 11-23 09:56 ?3943次閱讀

    基于Debian的Sparky Linux 7.2的亮點(diǎn)

    Linux kernel 6.1 LTS 提供支持,Sparky Linux 7.2采用 LXQt 1.2.0 和 KDE Plasma 5.27.5,現(xiàn)在提供 ARMHF 和 ARM64
    的頭像 發(fā)表于 12-14 10:13 ?1504次閱讀
    基于<b class='flag-5'>Debian</b>的Sparky <b class='flag-5'>Linux</b> 7.2的亮點(diǎn)

    手動(dòng)構(gòu)建Docker鏡像的方法

    不推薦使用docker commit命令,而應(yīng)該使用更靈活、更強(qiáng)大的dockerfile來(lái)構(gòu)建docker鏡像。
    的頭像 發(fā)表于 08-05 15:30 ?1845次閱讀
    <b class='flag-5'>手動(dòng)</b><b class='flag-5'>構(gòu)建</b>Docker<b class='flag-5'>鏡像</b>的方法

    揭秘,瑞芯微全系擁抱Linux 6.1內(nèi)核的底層邏輯

    近期,瑞芯微(Rockchip)基本完成了旗下產(chǎn)品Linux6.1BSP內(nèi)核更新,引發(fā)了不小的行業(yè)熱議。除了低端RK3506依舊使用Buildroot構(gòu)建系統(tǒng)外,RK3588、RK3576
    的頭像 發(fā)表于 05-16 08:31 ?1532次閱讀
    揭秘,瑞芯微全系擁抱<b class='flag-5'>Linux</b> <b class='flag-5'>6.1</b>內(nèi)核的底層邏輯

    拆解RK3568啟動(dòng)日志:Debian12+Linux6.1下的調(diào)試密碼,初學(xué)者也能看懂

    在嵌入式開(kāi)發(fā)中,啟動(dòng)日志(Boot Log) 是硬件調(diào)試、驅(qū)動(dòng)開(kāi)發(fā)、系統(tǒng)優(yōu)化的“第一手資料”。尤其是基于瑞芯微 RK3568(四核 A55,主打邊緣計(jì)算、物聯(lián)網(wǎng)設(shè)備)的方案,搭配 Debian12 系統(tǒng)與 Linux6.1 內(nèi)核時(shí),啟動(dòng)日志能直觀反映從硬件初始化到用戶(hù)登錄
    的頭像 發(fā)表于 02-06 16:52 ?3322次閱讀
    拆解RK3568啟動(dòng)日志:<b class='flag-5'>Debian12+Linux6.1</b>下的調(diào)試密碼,初學(xué)者也能看懂
    子长县| 湖州市| 泽普县| 交城县| 讷河市| 阜南县| 吉木乃县| 广东省| 丰城市| 宜兰市| 磴口县| 察雅县| 固安县| 涟源市| 上思县| 五家渠市| 文化| 阳谷县| 廉江市| 宣汉县| 三亚市| 蒙山县| 平南县| 汉沽区| 克拉玛依市| 柯坪县| 南康市| 涞水县| 阳谷县| 云阳县| 长宁区| 和田市| 维西| 太仆寺旗| 渑池县| 文山县| 高台县| 阿克| 平远县| 长岭县| 铜川市|