Linux 下搭建 AliOS-Things 开发环境

简介: aos-cube是AliOS Things基于命令行的开发管理工具,主要功能包括:工程配置与编译、Image下载调试、组件脚手架生成、组件安装管理、设备管理、代码审查、OTA工具等功能。本文将为大家介绍如何在Linux 下搭建 AliOS-Things 开发环境。

huagai_VCG41172483014_RF_2M.jpg
镜像下载、域名解析、时间同步请点击 阿里巴巴开源镜像站

aos-cube是AliOS Things基于命令行的开发管理工具,主要功能包括:工程配置与编译、Image下载调试、组件脚手架生成、组件安装管理、设备管理、代码审查、OTA工具等功能。它依赖于Python(64bits,2.7.14和3.5已验证)。Linux下AliOS-Things开发环境的搭建主要分为两部分:python和pip安装、基于pip安装aos-cube及相关的依赖包。

一、安装软件包和依赖包

# 安装python、pip和git
$ sudo apt-get install -y python python-pip git
# 完成python和pip安装后,再安装依赖库和aos-cube,步骤如下:
$ python -m pip install setuptools wheel aos-cube

如果在安装过程中遇到网络问题,可使用国内镜像。

### 安装/升级 pip
$ python -m pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/ --upgrade pip
### 基于pip依次安装第三方包和aos-cube
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/   setuptools
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/   wheel
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/   aos-cube
### 如需要使用doubanio作备用源
$ pip install  --trusted-host pypi.doubanio.com -i  http://pypi.doubanio.com/simple/  aos-cube
### 如需指定版本,可改成如aos-cube==0.2.50

因涉及多种开发环境和具体版本的依赖,针对开发者的实际情况,还给出一种简单方便且不影响当前系统环境的方法----基于虚拟环境virtualenv的方法,作为备用。
python和python-pip安装完成后,再执行以下步骤:

# pip 安装 virtualenv, 如安装成功,可以在pip list查看版本
$ python -m pip install virtualenv
# 如遇网络问题,可使用阿里云镜像
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/ virtualenv
# 建立虚拟环境,如安装到~/venv(可更改)
$ virtualenv  ~/venv --no-download
# 启动虚拟环境,下面执行使用 '.'
$ . ~/venv/bin/activate
# 安装 aos-cube和必要的依赖包
$ `请参考上文aos-cube及相关依赖安装`
# 退出虚拟环境
$ deactivate

二、配置环境变量

首先下载AliOS Things源代码。
其次添加 AOS_SDK_PATH系统环境变量,指向 AliOS Things 3.1源码路径,aos-cube会根据 AOS_SDK_PATH环境变量来定位AliOS Things源码。
根据不同的系统,可以在其相应的用户配置文件中修改,如~/.bash_profile,~/.profile,~/.bashrc等。例如,修改~/.bashrc文件:

$ vi ~/.bashrc
# 文件末尾添加环境变量,指向AliOS Things源码目录,并保存退出
export AOS_SDK_PATH=/home/user/AliOS-Things
# 使配置立即生效
$ source ~/.bashrc

三、编译

在自己的工作目录(注意:非AliOS Things的目录或子目录)下面,运行:

$ aos create project -b mk3060 -t helloworld -d tmp myapp
$ cd tmp/myapp
$ aos make

编译 mk3060 板子的 helloworld 示例程序。
编译过程中,编译系统会根据所选的平台自动下载相应的工具链。
也可以事先将交叉工具链下载到本地任意位置,然后将其加入到环境变量PATH里面。
注意:如果是直接采用linux的gcc编译,需要安装32bit版本的gcc。

$ sudo apt-get install gcc-multilib

编译完成以后,可使用串口工具minicom的ymodem方式下载程序和查看设备日志。

四、minicom串口配置

配置串口参数(以MK3060为例),配置文件(/etc/minicom/minirc.dfl)内容 :

pu port             /dev/ttyUSB0
pu baudrate         921600
pu bits             8
pu parity           N
pu stopbits         1
pu rtscts           No

启动 minicom,查看串口日志。

五、一些小技巧

Linux 操作串口及 j-link 会有root权限要求,尤其在使用 AliOS-Things Studio时候,对串口及 j-link 的权限需要先做配置:

  • $ sudo usermod -a -G dialout $(whoami),添加当前用户到 dialout 组,提供直接使用串口能力。
  • $lsubs 找到 j-link 厂商ID。如:Bus 002 Device 008: ID 1366:0105 SEGGER,厂商ID为1366,新建/etc/udev/rules.d/99-stlink-v2.rules文件,在文件里面添加规则:SUBSYSTEM=="usb", ATTR{idVendor}=="1366", MODE="666", GROUP="plugdev"

配置操作串口及 j-link权限后,重启系统生效。

视频演示

2.gif

阿里巴巴开源镜像站 提供全面,高效和稳定的镜像下载服务。钉钉搜索 ' 21746399 ‘ 加入镜像站官方用户交流群。”
相关文章
|
4月前
|
Linux Shell
入职必会-开发环境搭建36-Linux常用操作-Linux环境变量
环境变量的作用是指定到哪个目录去找你输入的命令执行。环境变量的设置分为:临时设置和永久设置两种。
|
4月前
|
Oracle Java 关系型数据库
入职必会-开发环境搭建41-Linux软件安装-安装JDK
本文介绍了在Linux系统中下载和安装JDK
163 3
入职必会-开发环境搭建41-Linux软件安装-安装JDK
|
4月前
|
域名解析 网络协议 Linux
入职必会-开发环境搭建38-Linux常用操作-Linux设置IP
目前安装的Linux操作系统默认是动态获取IP地址,IP地址可能会发生变动,需要把IP地址设置为静态的。
入职必会-开发环境搭建38-Linux常用操作-Linux设置IP
|
4月前
|
网络协议 Linux 网络安全
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
在CentOS 7中,新引入了firewalld服务(防火墙),取代了CentOS 6之前的iptables服务(防火墙)。
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
|
4月前
|
Linux
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
系统启动以后一直存在且常驻内存没有界面的进程就是服务。Linux系统中的所有服务都保存在下列目录中:/usr/lib/systemd/system,进入该目录就能看到所有的服务。
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
|
4月前
|
应用服务中间件 Linux 网络安全
|
4月前
|
应用服务中间件 Linux 网络安全
|
4月前
|
缓存 监控 Linux
入职必会-开发环境搭建40-Linux常用操作-Linux进程管理
进程是正在执行的程序或命令。每个进程独立的,都有需要占用一定的系统资源。Linux系统中启动进程有两种方式:1.Linux操作系统启动的时自动启动的进程。2.用户在终端输入命令启动的进程。
入职必会-开发环境搭建40-Linux常用操作-Linux进程管理
|
4月前
|
Unix 关系型数据库 Linux
入职必会-开发环境搭建35-Linux常用操作-Linux必会命令
使用Windows系统时用户通常是使用鼠标点击进行文件或文件夹的创建、删除等操作,在Linux系统中是通过敲命令来控制系统的,Windows系统和Linux系统的目录结构不同,我们需要先熟悉Linux系统的目录结构。
入职必会-开发环境搭建35-Linux常用操作-Linux必会命令
|
4月前
|
NoSQL 前端开发 Linux
入职必会-开发环境搭建45-Linux软件安装-安装Redis
本文介绍了在Linux中3种安装Redis的方式和连接方式
下一篇
无影云桌面