Edit online

DM-APP 开发

29 May 2024
Read time: 2 minute(s)

DM-APP 开发

DM-APP 的开发目录位于 luban-lite/packages/artinchip/aic-dm-apps。首先确保 luban-lite/ 根目录下的 Kernel 工程被正确配置且编译通过后,生成对应的 DM-APP SDK:
  1. 进入 DM-APP 的开发目录:
    cd luban-lite/packages/artinchip/aic-dm-apps
  2. 执行下面命令,生成对应的 DM-APP SDK:
    scons --target=sdk
    输出示例如下:
    scons: Reading SConscript files ...
    Copy rtconfig.py...
    Copy rtua.py...
    Copy rt-thread/tools/...
    Copy project .h files...
    Copy tools/env/...
    Copy tools/scripts/...
    Copy onestep.sh...
    Copy win_env.bat...
    Copy win_cmd.bat...
    Build local sdk succeed!
    

    DM-APP SDK 创建完成后,aic-dm-apps 文件夹可以被拷贝到任意 Linux/ Windows 路径进行开发和编译, 脱离 Luban-Lite SDK 进行开发操作 。

  3. 在 DM-APP 的开发目录中,使用以下命令可清理 SDK,否则可略过此步:
    scons --target=c

aic-dm-apps 目录结构

aic-dm-apps 的目录结构如下所示:

├── hello                   // hello 实例
│   ├── hello.mo            // 'scons --app=hello' 命令生成的可执行文件
│   ├── hello.so            // 'scons --lib=hello' 命令生成的库文件
│   ├── main.c              // 可执行文件的 main 函数入口
│   ├── rtt_api_test.c      // dm 中调用 rt-thread api 的函数实例
│   └── SConscript
├── LICENSE
├── README.md
├── SConstruct
├── toolchain               // 自动解压后的工具链
├── tools
│   ├── env
│   ├── host
│   ├── onestep.sh
│   ├── scripts
│   ├── sdk                 // 所有的工程头文件
│   ├── toolchain
│   ├── ua.def
│   ├── ua.py
│   └── ua.pyc
├── win_cmd.bat
└── win_env.bat             // 启动 windows 下的命令行

创建用户 DM App

用户可以基于 hello 实例来开发自己的 DM app ,把 hello 文件夹复制并改名成自己的应用。

把用户源文件拷贝到 xxxapp 文件夹,编辑 xxxapp/SConscript 文件让所有源文件能被 SCons 编译。关于 SConscript 的语法和修改方法,参考 SConstruct

  1. 进入 luban-lite/packages/artinchip/aic-dm-apps 目录。
    cd luban-lite/packages/artinchip/aic-dm-apps
  2. 复制 hello 文件夹并重命名为自己的应用名称,例如 xxxapp
    cp -r hello xxxapp
  3. 在终端中运行 scons --app=xxxapp,编译应用程序。
    scons --app=xxxapp
  4. 运行 ls xxxapp/xxxapp.mo 查看目标文件。
    ls xxxapp/xxxapp.mo
  5. 运行 scons --app=xxxapp -c 清理编译产物。
    scons --app=xxxapp -c