差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
上一修订版两侧同时换到之后的修订记录
digi:arm-embedded:linux:dey:dey_app_development [2021/02/26 14:50] robindigi:arm-embedded:linux:dey:dey_app_development [2024/01/09 23:26] robin
行 1: 行 1:
 =====DEY应用程序开发===== =====DEY应用程序开发=====
-您可以使用Digi IDE(基于Eclipse定制的IDE)或是QT Creator来进行应用程序开发。下面示例中用到Digi的交叉编译工具,如果您用的DEY版本和示例命令不一致,请[[https://ftp1.digi.com/support/digiembeddedyocto/|Digi官方FTP]]中对应版本的SDK进行替换。我们建议您使用最新的DEY版本和它对应的安装包。  +您可以使用Makefile或是Digi IDE(基于Eclipse定制的IDE)或是QT Creator来进行应用程序开发。Digi提供SDK来安装开发应用程序所需的交叉编译工具链,您需要根据您的ConnectCore硬件平台下载相应的SDK安装。 
 + 
 +Digi官方提供完备的应用程序英文文档,本中文文档为精简版,当您碰到问题,请访问[[https://www.digi.com/resources/documentation/digidocs/embedded/|官方的文档入口]],选择对应的ConnectCore硬件平台后,进入Digi Embedded Yocto文档,在左侧菜单中选择Application Development章节,查看相关的内容。 
 + 
 +====下载和安装Digi ConnectCore相关平台的SDK==== 
 +SDK提供了应用程序开发所需的交叉编译工具链,安装好SDK后,您可以使用终端的方式,或是IDE的方式来开发应用程序。下面示例中用到Digi的交叉编译工具,如果您用的DEY版本和示例命令不一致,请[[https://ftp1.digi.com/support/digiembeddedyocto/|Digi官方FTP]]中选择对应版本的SDK进行替换。我们建议您使用最新的DEY版本和它对应的安装包。 
 <hidden 备用下载地址> <hidden 备用下载地址>
-如果碰到网络问题,从官网下载很慢,可以尝试备用的下载地址:http://dey-mirror.eccee.com:1080+如果碰到网络问题,从官网下载很慢,可以尝试备用的下载地址:http://dey-mirror.eccee.com:1080/digiembeddedyocto/soft/,请根据你的平台选择正确的sdk。 
 </hidden> </hidden>
-====使用Eclipse Digi应用开发环境==== +除了下载预编译好的SDK安装外,您也可以在编译系统固件镜像时,使用-c populate_sdk来编译生成SDK安装包。\\ 
-您可以使用基于EclipseDigi IDE和相关插件来为您的硬件平台开创建和编译应用程序。 +下面以ConectCore 93核心模块的的SDK为例来说明SDK安装过程和在程序开发及IDE配置中如何使用相关的交叉编译工具链:\\ 
-===下载并安装IDE软件=== +1. 下载[[https://ftp1.digi.com/support/digiembeddedyocto/4.0/r4/sdk/ccimx93-dvk/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-cortexa55-ccimx93-dvk-toolchain-4.0-r4.sh|Connectcore 93的DEY-4.0-r4 SDK]] \\ 
-您可以用下面任种方法安装Digi应用程序开发环境: +如果您使用其它平台,请相应选择下载: 
-  * Digi应用程序开发环境安装包它包括Eclipse和所有需要到的插件,包括Digi插件以及JRE 8。 +[[https://ftp1.digi.com/support/digiembeddedyocto/4.0/r4/sdk/ccmp13-dvk/fb/dey-glibc-x86_64-core-image-base-cortexa7t2hf-neon-vfpv4-ccmp13-dvk-toolchain-4.0-r4.sh |ConnectCore MP133 DEY-4.0-r4 SDK ]] \\ 
-  * 如果您之前已经在用Eclipse开发软件,那么只需安装Digi插件即可。 +[[https://ftp1.digi.com/support/digiembeddedyocto/4.0/r4/sdk/ccmp15-dvk/wayland/dey-glibc-x86_64-dey-image-qt-wayland-cortexa7t2hf-neon-vfpv4-ccmp15-dvk-toolchain-4.0-r4.sh|ConnectCore MP157 DEY-4.0-r4 SDK]]  \\   
-Digi应用程序开发环境提供了个预配置好的Eclipse开发环境,使用该开发环境,您可以:+[[https://ftp1.digi.com/support/digiembeddedyocto/4.0/r4/sdk/ccimx8mn-dvk/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-cortexa53-crypto-ccimx8mn-dvk-toolchain-4.0-r4.sh|ConnectCore 8m nano DEY-4.0-r4 SDK]] \\ 
 +[[https://ftp1.digi.com/support/digiembeddedyocto/4.0/r4/sdk/ccimx8x-sbc-pro/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-cortexa35-ccimx8x-sbc-pro-toolchain-4.0-r4.sh|ConnectCore 8x DEY-4.0-r4 SDK]] 
 +2. 安装  \\ 
 +不同SOM平台请使用您下载的SDK文件名来替换 
 +<code> 
 +chmod +x ./dey-glibc-x86_64-dey-image-qt-xwayland-cortexa55-ccimx93-dvk-toolchain-4.0-r4.sh 
 +./dey-glibc-x86_64-dey-image-qt-xwayland-cortexa55-ccimx93-dvk-toolchain-4.0-r4.sh 
 +</code> 
 +根据提示,一般只需一直回车,即可安装好SDK\\ 
 +3.根据项目大小和使用习惯开发应用程序 \\ 
 +您可以使用IDE,也可以直接使用终端和Makefile来编译程序,请从右侧菜单选择您所需的开发方式。 
 + 
 +====使用基于EclipseDigi官方IDE应用开发环境Digi ADE=== 
 +您可以使用Digi提供的IDE来为您的ConnectCore硬件平台开创建和编译应用程序。Digi Application Development Environment简称DADE,是个集成式开发环境,用只需安装一次,就可以在IDE中自动配置好相关插件,并且IDE中集成有例程和开发文档供用户参考。使用该开发环境,您可以:
   * 下载和安装不同Digi硬件平台所需的DEY工具链   * 下载和安装不同Digi硬件平台所需的DEY工具链
   * 创建新的C/C++项目   * 创建新的C/C++项目
行 16: 行 34:
   * 使用DEY工具链交叉编译C/C++项目和例程   * 使用DEY工具链交叉编译C/C++项目和例程
   * 在您的开发板远程启动和调试应用程序   * 在您的开发板远程启动和调试应用程序
-注意,为了保障开发顺利进行,您用于开发的主机应安装有64位的Linux操作系统(Ubuntu 18.04及其以上),多核和4G的RAM,并且可用磁盘空间大于30G+注意,为了保障开发顺利进行,您用于开发的主机应安装有64位的Linux桌面操作系统(Ubuntu 20.04及其以上),多核和8G以上的RAM,并且可用磁盘空间至少大于100G。 
 +===下载并安装IDE软件=== 
 +您可以用下面任一种方法安装Digi ADE应用程序开发环境: 
 +  * Digi应用程序开发环境安装包,它包括Eclipse和所有需要用到的各种插件 
 +  * 如果您之前已经在用Eclipse开发软件,那么只需安装Digi插件即可,详情请参考官方文档。 
 +下面我们以ConnectCore 93的程序开发为例: 
 + 
 +1、下载Digi ADE安装包:https://ftp1.digi.com/support/digiembeddedyocto/eclipse,会自动跳转下载最新的安装包,一般是一个40003033_版本号.run文件,以40003033_H.run为例
  
-1、下载安装包:https://ftp1.digi.com/support/digiembeddedyocto/eclipse/eclipse-dey-3.0-r3.run 
-(如官网FTP有更新版本,请尽量使用最新版本的IDE)  \\ 
 2、安装过程中,您需要有足够权限,因此先运行:  \\ 2、安装过程中,您需要有足够权限,因此先运行:  \\
 <code> <code>
-$ sudo install -o <your-user> -g <your-group> -d /opt/eclipse  +$ sudo install -o $USER -g $USER -d /opt/eclipse  
-上面的用户名或用户组一般为您登的用户名  +上面的$USER也可以用您登的用户名替代。  
 </code> </code>
-3、下载完成后,需要先更改属性赋予该*.run文件可执行权限,然后双击*.run运行安装程序,按提示一步步完成安装。您也可以在命令行下执行+3、下载完成后,需要先更改属性赋予该*.run文件可执行权限,然后在桌面上双击*.run运行安装程序,按提示一步步完成安装。您也可以在命令行下执行
 <code> <code>
-$ chmod +x eclipse-dey-3.0-r3.run  +sudo chmod +x 40003033_H.run  
-$ ./eclipse-dey-3.0-r3.run +$ ./40003033_H.run
 </code> </code>
  
-===安装的交叉编译工具链=== +===安装配置平台的交叉编译工具链=== 
-Digi提供了个预编译的SDK,它带有了匹配预编译镜像所需的交叉编译工具链和库文件等。安装好的工具链包括一些文件和目录:环境设置脚本,配置文件,主机和目标板rootfs等。 +我们在第步已经安装好对应平台SDK,首次运行Digi ADE我们需要配置好它如果向导没有引导您配置项目的工具链你也可以从菜单中找到工具链的安装配置页面:Window>Preferences中的DEY Toolchains。如果您的硬件平台的SDK没在安装好,或是你需要增加一种平台的SDK,可以点击“Download new toolchains...”按钮会自动搜索以下载对应平台的交叉工具链。但Eclipse不是一种高效的下载工具,通常建议您独立下载SDK并安装后供IDE配置和使用。Digi ADE支持安装多个不同SOM的SDK您只需选中一个当前所需的SDK作为默认的工具链,并应用它。
-  * 安装Digi工具链 +
-默认地,首次启动开发环境会提示您需要配置工具链,虽然你可以从IDE菜单中安装工具链,但由于通过eclipse下载工具链很慢,国内一般建议手工下载[[ftp://ftp1.digi.com/support/digiembeddedyocto/3.0/r3/|SDK安装]],eclipse可以认出手工安装的工具链\\ +
-请参考下面手工方式安装工具链: +
-<code> +
-$ sudo install -o <your-user> -g <your-group> -d /opt/dey +
-$ sudo chmod +x ./dey-glibc-x86_64-dey-image-qt-XXXX-<arch-platform>-toolchain-<version>.sh  (请根据自己需求选择对应平台的工具链) +
-$ ./dey-glibc-x86_64-dey-image-qt-XXXX-<arch-platform>-toolchain-<version>.sh   +
-</code> +
- +
-你也可以从菜单中找到工具链的安装配置页面:Window>Preferences中的DEY Toolchains。 +
-点击“Download new toolchains...”按钮会自动搜索以下载对应平台的交叉工具链。 +
-每个平台都有fb和视窗(x11或xwayland)两种工具链,分别对应 Framebuffer和视窗的两种显示方式。图形窗口管理器是在Framebuffer之上的视窗架构,Framebuffer更简单,更省内存,而视窗显示服务器架构可利用的开源桌面软件资源较丰富,编译出来的程序也更大,且基于视窗sdk程序只能在带有桌面显示支持的镜像上运行。如果你的设备不带显示屏,下载个fb版本的工具链就够了。\\ +
-下载安装好工具链后,选中一个作为默认的工具链,并应用它。+
  
 {{digi:arm-embedded:linux:dey:dey-toolchains-config.png?400|}} {{digi:arm-embedded:linux:dey:dey-toolchains-config.png?400|}}
  
 ===连接到核心板=== ===连接到核心板===
-Eclipse带有一个终端插件,让您可以从内置终端连接到远程设备上以方便调试。如果没找到终端窗口可以从菜单上找到Window> Show View> Other>Terminal中打开。在终端视图中,点击Open a Terminal按钮新建一个终端窗口您可以择任一种远程协议来连接到目标板上。通常地用SSH最为方便速度也最快。请根据目标板的IP地址配置好远程终端+Eclipse带有一个connection连接插件,让您可以从内置终端连接到远程设备上以方便调试。Connections的配置按钮在主界面上下所示按下按钮新建一个连接然后中Generic Connection根据向导一步一步添加设备的连接: 
 + 
 +{{:digi:arm-embedded:linux:dey:pasted:20240109-231743.png}} 
 + 
 +点击Browse按钮查看网络内的设备如果没在列表中可以用ADD按钮通过开发板的IP地址添加, 
 + 
 +{{:digi:arm-embedded:linux:dey:pasted:20240109-232205.png}} 
 + 
 +最终添加好一个ConnectCore 93的开发板的连接配置如下: 
 + 
 +{{:digi:arm-embedded:linux:dey:pasted:20240109-232424.png}} 
 + 
 +点击Finish完成添加
  
 ===创建C/C++项目=== ===创建C/C++项目===
行 71: 行 93:
  
 ===运行或调试项目=== ===运行或调试项目===
-编译成功后,您可以远程运行或是调试它。在工具栏按钮中,有个当前目标板连接的下拉菜单,如果你还没有连接到任何目标,请点击“New Connection",根据向导,建立一个新的连接。创建好后点击边上的连按钮连接到目标板上+编译成功后,您可以远程运行或是调试它。在工具栏按钮中,有个当前目标板连接的下拉菜单,如果之前连接到开发的步骤已经建立连接,就可以直使用
  
 连接好后,可以通过项目的右键菜单Run As > DEY C/C++ Remote Application或是Debug As > DEY C/C++ Remote Application来运行或是调试程序。 连接好后,可以通过项目的右键菜单Run As > DEY C/C++ Remote Application或是Debug As > DEY C/C++ Remote Application来运行或是调试程序。
行 86: 行 108:
  
 2.**安装DEY交叉编译工具链** 2.**安装DEY交叉编译工具链**
-安装完成后,请先不要运行。我们还需要下载并安装支持QT的DEY工具链,您也可以使用自行编译的工具链。请从Digi的官方FTP中下载对应版本的SDK安装包来安装。当前的最新版本是3.0-r3,手工下载安装,请到{{ftp://ftp1.digi.com/support/digiembeddedyocto/3.0/r3/|Digi官网下载}}下载后安装。+安装完成后,请先不要运行。我们还需要下载并安装支持QT的DEY工具链,您也可以使用自行编译的工具链。请从Digi的官方FTP中下载对应版本的SDK安装包来安装。当前的最新版本是3.0-r4,手工下载安装,请到{{ftp://ftp1.digi.com/support/digiembeddedyocto/3.0/r4/|Digi官网下载}}下载后安装。
 \\ \\
 <tabs> <tabs>
行 94: 行 116:
 <pane id="cc6ulsbc"> <pane id="cc6ulsbc">
 <code> <code>
-~> wget https://ftp1.digi.com/support/digiembeddedyocto/3.0/r3/sdk/ccimx6ulsbc/x11/dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-ccimx6ulsbc-toolchain-3.0-r3.sh    +~> wget https://ftp1.digi.com/support/digiembeddedyocto/3.0/r3/sdk/ccimx6ulsbc/x11/dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-ccimx6ulsbc-toolchain-3.0-r4.sh    
-~> chmod +x dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-ccimx6ulsbc-toolchain-3.0-r3.sh +~> chmod +x dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-ccimx6ulsbc-toolchain-3.0-r4.sh 
-~> ./dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-ccimx6ulsbc-toolchain-3.0-r3.sh+~> ./dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-ccimx6ulsbc-toolchain-3.0-r4.sh
 </code>  \\   </code>  \\  
 \\ \\
 </pane> </pane>
-<pane id="cc8mnano">+<pane id="cc8xsbc">
 <code> <code>
-~> wget ftp://ftp1.digi.com/support/digiembeddedyocto/3.0/r3/sdk/ccimx8mn-dvk/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8mn-dvk-toolchain-3.0-r3.sh    +~> wget https://ftp1.digi.com/support/digiembeddedyocto/3.2/r1/sdk/ccimx8x-sbc-pro/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8x-sbc-pro-toolchain-3.2-r1.sh    
-~> chmod +x dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8mn-dvk-toolchain-3.0-r3.sh  +~> chmod +x dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8x-sbc-pro-toolchain-3.2-r1.sh  
-~> ./dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8mn-dvk-toolchain-3.0-r3.sh +~> ./dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8x-sbc-pro-toolchain-3.2-r1.sh 
 </code>  \\   </code>  \\  
 \\ \\
 </pane> </pane>
-<pane id="cc68xsbc"> +<pane id="cc8mnano"> 
-ftp://ftp1.digi.com/support/digiembeddedyocto/3.0/r3/sdk/ccimx8x-sbc-pro/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8x-sbc-pro-toolchain-3.0-r3.sh +<code> 
-~> chmod +x dey-glibc-x86_64-dey-image-qt-fb-aarch64-toolchain-2.4-r3.sh +~> wget https://ftp1.digi.com/support/digiembeddedyocto/3.2/r1/sdk/ccimx8mn-dvk/xwayland/dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8mn-dvk-toolchain-3.2-r1.sh 
-~> ./dey-glibc-x86_64-dey-image-qt-fb-aarch64-toolchain-2.4-r3.sh+~> chmod +x dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8mn-dvk-toolchain-3.2-r1.sh 
 +~> ./dey-glibc-x86_64-dey-image-qt-xwayland-aarch64-ccimx8mn-dvk-toolchain-3.2-r1.sh
 </code>  \\   </code>  \\  
 \\ \\
行 200: 行 223:
 ====用终端命令行开发应用程序==== ====用终端命令行开发应用程序====
 您也可以使用命令行的方式来编译Hello world应用程序,并在您的板子上运行。之前的IDE章节已经安装好了DEY的工具链,如果你没有安装,可以从[[ftp://ftp1.digi.com/support/digiembeddedyocto|官方的FTP]]中下载对应平台的SDK并安装它。 您也可以使用命令行的方式来编译Hello world应用程序,并在您的板子上运行。之前的IDE章节已经安装好了DEY的工具链,如果你没有安装,可以从[[ftp://ftp1.digi.com/support/digiembeddedyocto|官方的FTP]]中下载对应平台的SDK并安装它。
-当前的最新版本是2.6-r3,请安装您核心模块和之上运行的DEY版本对应的SDK,以CC6ul为例+当前的最新版本是3.0-r4,请安装您核心模块和之上运行的DEY版本对应的SDK,以CC6ul为例
 <code> <code>
-~> wget ftp://ftp1.digi.com/support/digiembeddedyocto/2.6/r3/sdk/ccimx6ulsbc/x11/cc6ulsbc/dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-2.6-r3.sh   \\ +~> wget ftp://ftp1.digi.com/support/digiembeddedyocto/3.0/r4/sdk/ccimx6ulsbc/x11/cc6ulsbc/dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-3.0-r4.sh   \\ 
-或用浏览器下载上面地址链接,或是用国内镜像http://dey-mirror.eccee.com/sdk/cc6ulsbc/dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-2.6-r3.sh+或用浏览器下载上面地址链接,或是用国内镜像http://dey-mirror.eccee.com/sdk/cc6ulsbc/dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-3.0-r4.sh
  
-~> chmod +x dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-2.6-r3.sh +~> chmod +x dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-3.0-r4.sh 
-~> ./dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-2.6-r3.sh+~> ./dey-glibc-x86_64-dey-image-qt-x11-cortexa7t2hf-neon-toolchain-3.0-r4.sh
 </code> </code>
  
行 261: 行 284:
 </code> </code>
  
-更多信息,请参考官方文档中的[[http://cms.digi.com/resources/documentation/digidocs/embedded/dey/2.6/cc6ul/yocto_t_cl-app-create-build|应用程序开发]]+更多信息,请参考官方文档中的[[http://cms.digi.com/resources/documentation/digidocs/embedded/dey/3.0/cc6ul/yocto_t_cl-app-create-build|应用程序开发]]