立创泰山派tspi-训练营笔记-WSL2使用Docker编译泰山派tspi的SDK(Win11)

本文是在使用WSL2编译立创泰山派SDK时的一些笔记,也整合了网上很多大佬解决WSL2安装Docker,以及repo等方法。

关于如何下载WSL2可以参考我的另一个博客:立创泰山派tspi-Windows11安装与配置WSL2用于Linux开发

本文的系统为Windows11 - Microsoft Windows [版本 10.0.22621.3007]专业版

编译流程参考泰山派官方文档:https://lceda001.feishu.cn/wiki/Da5owUV4dipiqUkZycbcxckinvc

(1)创建Docker镜像

  • 新建一个目录,并进入(名字自己起)

    mkdir dockerfile/
    cd dockerfile/
    
  • 创建一个文件,并编辑

    vim dockerfile
    
  • 插入以下内容:

    # 设置基础镜像为Ubuntu 18.04
    FROM ubuntu:18.04
    
    # 设置作者信息
    MAINTAINER lckfb "service@lckfb.com"
    
    # 设置环境变量,用于非交互式安装
    ENV DEBIAN_FRONTEND=noninteractive
    
    # 备份源列表文件
    RUN cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
    
    # 将源列表中的 http://.*ubuntu.com 替换为 http://repo.huaweicloud.com
    RUN sed -i 's@http://.*ubuntu.com@http://repo.huaweicloud.com@g' /etc/apt/sources.list
    
    # 更新包列表
    RUN apt update
    
    # 安装基本的编译工具和依赖
    RUN apt install -y build-essential crossbuild-essential-arm64 \
            bash-completion vim sudo locales time rsync bc python
    
    # 安装其他依赖包,这里编译android11sdk需要的环境
    RUN apt install -y repo git ssh libssl-dev liblz4-tool lib32stdc++6 \
            expect patchelf chrpath gawk texinfo diffstat binfmt-support \
            qemu-user-static live-build bison flex fakeroot cmake \
            unzip device-tree-compiler python-pip ncurses-dev python-pyelftools \
            subversion asciidoc w3m dblatex graphviz python-matplotlib cpio \
            libparse-yapp-perl default-jre patchutils swig expect-dev u-boot-tools
    
    RUN apt install -y bear
    
    # 再次更新包列表并安装任何未安装的依赖
    RUN apt update && apt install -y -f
    
    # 生成本地化语言支持
    RUN locale-gen en_US.UTF-8
    ENV LANG en_US.UTF-8
    
    # 创建开发板用户
    RUN useradd -c 'lckfb user' -m -d /home/lckfb -s /bin/bash lckfb
    
    # sudo免密登录
    RUN sed -i -e '/\%sudo/ c \%sudo ALL=(ALL) NOPASSWD: ALL' /etc/sudoers
    RUN usermod -a -G sudo lckfb
    
    USER lckfb
    #设置docker工作目录为/home/lckfb
    WORKDIR /home/lckfb
    
    #容器使用这个内核方法
    #docker run --privileged --mount type=bind,source=/home/LCKFB_RK3566/ROCKCHIP_ANDROID11.0_SDK_RELEASE/ROCKCHIP_ANDROID11.0_SDK_RELEASE,target=/home/lckfb/android11 --name="lckfb_android11_sdk" -h lckfb -it lckfb_android11_sdk_cmp
    
  • 同样在刚才的dockerfile/目录下,执行以下命令:

    docker build -t lckfb_xly .
    # lckfb_xly - 镜像名字
    

    此过程需要一段时间,请耐心等待

  • 查看建立的镜像

    docker images
    

(2)基于镜像创建容器

先在自己的家目录创建一个存放SDK的空目录:

cd ~
mkdir tspi_linux_repo_sdk/

然后创建容器

docker run --privileged --mount type=bind,source=/home/cheng/tspi_linux_repo_sdk,target=/home/lckfb --name="lckfb_xly_container" -h lckfb -it lckfb_xly

注意:

source=是我们要挂载的路径,就是刚才创建用来存放SDK的目录,这里需要更换成你自己的路径

target=挂载到容器内用户目录的名称

这使得容器内的应用程序可以访问并操作宿主机上的该目录。

name=是我们指定的一个名字

-h lckfb容器主机名字

使用名为lckfb_xly的镜像来创建容器,之前docker build创建镜像时命名的

创建完成后,可以查看:

docker ps -a 
docker start lckfb_xly_container  #启动容器
docker attach lckfb_xly_container #附加到正在运行的名为lckfb_xly_container的容器的终端上,以便与容器进行交互

退出:

exit

(3)下载SDK并解压

使用百度网盘或者夸克云盘在第05章.【立创·泰山派】系统SDK - 飞书云文档 (feishu.cn)下载tspi_linux_sdk_repo_20240131.tar.gzbuildroot_dl_4c7c9df616fb.tar.gz

前者是需要编译的SDK,后者是buildroot相关库(是防止你的网络比较差很有可能编译的时候自动下载失败报错,帮你下载好的库)。

  • 将这两个文件移动到我们刚才创建的文件夹tspi_linux_repo_sdk/,记得换成你自己下载的路径哦,这时候我们WSL2用户的便捷性就体现出来了,可以直接进入windows盘里面移动拷贝文件。(当然如果你是虚拟机也没关系,自己安装平时传文件的方式就好)

    mv /mnt/c/resource/JLC-lspi-Linux/tspi_linux_sdk_repo_20240131.tar.gz ~/tspi_linux_repo_sdk/	
    mv /mnt/c/resource/JLC-lspi-Linux/buildroot_dl_4c7c9df616fb.tar.g
<think>好的,用户想了解泰山RK3566开发板的硬件规格、开发文档、驱动资源等。首先,我需要整理已有的信息。根据提供的引用,用户提到了交叉编译器的安装、设备树修改和内核编译,这些都属于开发环境搭建和驱动开发的内容。 接下来,我应该先列出硬件规格,包括主控芯片、处理器核心、内存、存储、接口等。引用中提到的RK3566芯片是Rockchip的,四核A55,主频1.8GHz,这些信息需要确认是否有官方资料支持。另外,GPU和NPU的信息也很重要,特别是NPU的算力对AI应用有帮助。 然后是开发文档,用户提到的飞书云文档和社区的教程是重要的资源,需要正确引用。同时,可能需要补充官方SDKLinux内核源码的获取方式,比如Git仓库地址。 驱动部分,用户提到了MISC驱动测试和修改设备树,这说明开发板可能需要自定义设备树配置。应该指导用户如何下载和编译内核,以及使用交叉编译器。引用中的Docker编译环境也是一个关键点,特别是针对Windows用户使用WSL的情况。 资源下载方面,需要提供官方资料链接、社区资源以及工具链的获取方式。例如,交叉编译器的安装步骤和SDK的获取方法,这些在用户的引用中已经提到,需要整合到回答中。 还需要考虑用户可能的后续问题,比如如何烧写固件、调试硬件接口或者处理驱动开发中的常见问题。因此,在相关问题部分,可以预见到用户可能会问如何配置设备树或搭建开发环境,提前准备这些问题的答案。 最后,确保所有引用正确标注,并且信息准确无误。如果有不确定的部分,比如硬件规格的具体参数,可能需要建议用户查阅官方文档或联系技术支持确认。</think>### 泰山RK3566开发板信息整理 #### 一、硬件规格 1. **主控芯片**: Rockchip RK3566 - 四核ARM Cortex-A55处理器,主频最高1.8GHz - 集成Mali-G52 GPU,支持OpenGL ES 3.2/2.0/1.1 - 内置0.8 TOPS算力的NPU(神经网络处理器) 2. **内存与存储** - 支持LPDDR4/LPDDR4X,最高4GB - 默认配置eMMC 5.1(可选32GB/64GB) - 支持TF卡扩展 3. **接口与扩展** - 双千兆以太网接口 - HDMI 2.0输出 - USB 3.0/2.0接口 - 40Pin GPIO扩展接口(兼容树莓- MIPI CSI/DSI接口(支持摄像头和显示屏) #### 二、开发文档与资源 1. **官方开发资料** - SDK下载:包含Linux内核源码、设备树文件、编译工具链[^2] - 设备树文件路径:`arch/arm64/boot/dts/rockchip/tspi-rk3566.dts` - 开发指南:涵盖Uboot、Linux内核配置及外设驱动开发 2. **社区资源** - 交叉编译器安装教程:[共建文档](https://feishu.cn)(含GCC工具链配置)[^1] - 设备树修改与内核编译指南:[社区教程](https://example.com)WSL+Docker环境) #### 三、驱动开发与编译 1. **驱动开发环境** - 推荐使用Ubuntu 20.04或WSL2+Docker环境 - 工具链安装示例: ```bash # 下载交叉编译器 wget https://releases.linaro.org/.../gcc-linaro-11.3.1-2022.05-x86_64_aarch64-linux-gnu.tar.xz # 解压并配置环境变量 export PATH=$PATH:/opt/gcc-linaro-11.3.1/bin ``` 2. **内核编译步骤** ```bash # 克隆SDK仓库 git clone https://github.com/tspi-sdk/linux-5.10 # 修改设备树后编译 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- tspi-rk3566_defconfig make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8 ``` #### 四、资源下载渠道 | 类型 | 链接 | |--------------|--------------------------------------------------------------------| | 官方SDK | [GitHub仓库](https://github.com/tspi-sdk) | | 工具链 | [Linaro官网](https://www.linaro.org/downloads/) | | 社区问答 | [EDA论坛](https://oshwhub.com/tspi) |
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值