• RT-Thread Studio增加软件包操作


    RT-Thread Studio增加软件包操作

    1. 在本地中完成如下操作

    打开RTthread Studio的安装目录
    image

    在当前目录下找到env的目录
    image

    在env的目录下找到要添加软件包的分类文件夹
    image

    本次以peripherals作为例子,进入peripherals点击鼠标右键在当前目录打开ConEmu Here,如果鼠标右键的列表中没有这个选项参考如下教程

    Env 用户手册 (rt-thread.org)

    接着按照如下教程使用索引生成向导

    软件包开发指南 (rt-thread.org)

    其中github的ID查询方法:https://api.github.com/users/+你的github用户名

    完成向导后就会在当前目录下生成对应的软件包文件夹
    image

    修改文件夹下的两个文件
    image

    Kconfig文件示例

    # Kconfig file for package ad7606
    menuconfig PKG_USING_AD7606
        bool "AD7606: An ADC chip."
        default n
    
    if PKG_USING_AD7606
    
        config PKG_AD7606_PATH
            string
            default "/packages/peripherals/ad7606"
    
        choice
            prompt "Version"
            default PKG_USING_AD7606_LATEST_VERSION
            help
                Select the package version
    
            config PKG_USING_AD7606_V100
                bool "v1.0.0"
    
            config PKG_USING_AD7606_LATEST_VERSION
                bool "latest"
        endchoice
              
        config PKG_AD7606_VER
           string
           default "v1.0.0"    if PKG_USING_AD7606_V100
           default "latest"    if PKG_USING_AD7606_LATEST_VERSION
    
    endif
    

    package.json文件示例

    {
      "name": "ad7606",
      "description": "Please add description of ad7606 in English.",
      "description_zh": "请添加软件包 ad7606 的中文描述。",  
      "enable": "PKG_USING_AD7606", 
      "keywords": [
        "ad7606"
      ],
      "category": "peripherals",
      "author": {
        "name": "59213512",
        "email": "1754915734@qq.com",
        "github": "59213512"
      },
      "license": "MIT",
      "repository": "https://github.com/fateful-Y/rtthread",
      "icon": "unknown",
      "homepage": "unknown",
      "doc": "unknown",
      "site": [
        {
          "version": "v1.0.0",
          "URL": "https://github.com/fateful-Y/rtthread.git",
          "filename": "ad7606-1.0.0.zip",
          "VER_SHA": "master"
        },
        {
          "version": "latest",
          "URL": "https://github.com/fateful-Y/rtthread.git",
          "filename": "",
          "VER_SHA": "master"
        }
      ]
    }
    

    2. 在对应的git仓库中建立如下目录列表

    image
    其中docs放一些说明文件

    examples放软件包的demo示例文件

    inc放头文件

    src放源文件

    .gitignore放如下代码

    # Prerequisites
    *.d
    
    # Object files
    *.o
    *.ko
    *.obj
    *.elf
    
    # Linker output
    *.ilk
    *.map
    *.exp
    
    # Precompiled Headers
    *.gch
    *.pch
    
    # Libraries
    *.lib
    *.a
    *.la
    *.lo
    
    # Shared objects (inc. Windows DLLs)
    *.dll
    *.so
    *.so.*
    *.dylib
    
    # Executables
    *.exe
    *.out
    *.app
    *.i*86
    *.x86_64
    *.hex
    
    # Debug files
    *.dSYM/
    *.su
    *.idb
    *.pdb
    
    # Kernel Module Compile Results
    *.mod*
    *.cmd
    .tmp_versions/
    modules.order
    Module.symvers
    Mkfile.old
    dkms.conf
    

    LICENSE放如下代码

    hello/LICENSE at master · RT-Thread-packages/hello

    SConscript构建文件示例:

    from building import *
    Import('rtconfig')
    
    src   = []
    cwd   = GetCurrentDir()
    
    # add ad7606 src files.
    if GetDepend('PKG_USING_AD7606'):
        src += Glob('src/ad7606.c')
    
    # add ad7606 include path.
    path  = [cwd + '/inc']
    
    # add src and include to group.
    group = DefineGroup('ad7606', src, depend = ['PKG_USING_AD7606'], CPPPATH = path)
    
    Return('group')
    

    3. 打开rtthread studio中的setting文件添加软件包

    image

  • 相关阅读:
    JDK:Font.canDisplay()是如何生效的
    kind 安装 k8s 集群
    陶瓷行业废污水处理使用MES系统的作用
    关于矩阵的摄动。
    CentOS8的nmcli常用命令总结
    未来的应用为什么需要安全沙箱
    1441_TC275 DataSheet阅读笔记2
    golang 微服务的负载均衡
    Bootstrap Table 实现 分页选中
    查看tensorflow是否支持GPU,以及测试程序
  • 原文地址:https://www.cnblogs.com/ydmblog/p/16656936.html