1.1 起航——配置与开始

如果你对Mynewt很好奇,且很快对Mynewt的项目找到感觉,那么此文件提供的两个选项将非常适合。

选项1(推荐):安装Newt工具,MyNewt OS实例(用于模拟目标),开发嵌入式软件的工具链(如GNU toolchain)。我们试图将这个过程变的容易,例如,在Mac OS上我们创建了brew公式。

如果你对这样的环境比较熟悉,或关心你机器上的性能,我们推荐这个选项。

选项2是一个配置以及运行Mynewt的简单、独立的方式,当然有一定的局限性。Newt工具和工具链在一个独立的Docker容器中已经包含,只需要将其安装到你的电脑上。

但是,这不是一个长期的选项,对于嵌入式系统开发而言,可能不能支持所有有用的、关键的特性。例如,Docker工具包中可用的USB设备映射,在新版本的Docker版本中将不再可用。且Docker方式通常将比原生安装慢。

接下来可以创建你的第一个Mynewt项目——基于模拟硬件。

1.1.1 原生安装

http://mynewt.apache.org/latest/get_started/native_install/index.html

Linux系统安装(Debian)

方法1:

最新的Debian包存放在一个私有的APT仓库: https://github.com/JuulLabs-OSS/debian-mynewt,要使用apt-get安装,首先需要添加仓库以及公钥。

  1. $ wget -qO - https://raw.githubusercontent.com/JuulLabs-OSS/debian-mynewt/master/mynewt.gpg.key | sudo apt-key add -

将二进制和源文件仓库添加到mynewt.list的apt源列表文件:

  1. $ sudo tee /etc/apt/sources.list.d/mynewt.list <<EOF
  2. >deb https://raw.githubusercontent.com/JuulLabs-OSS/debian-mynewt/master latest main
  3. >EOF

更新可用包:

  1. $sudo apt-get update

若出现错误,原因为需要使用Ubuntu的1704版本,因此只有更换方法,离线安装:

1547001210968

  1. $sudo apt-get install newt

注意:若出现编译错误(如丢失sys/mman.h),需要保证有32位的glibc:

  1. $sudo apt-get install gcc-multilib

方法2:手动下载安装

  1. $ wget https://raw.githubusercontent.com/JuulLabs-OSS/binary-releases/master/mynewt-newt-tools_1.5.0/newt_1.5.0-1_amd64.deb
  2. $ sudo dpkg -i newt_1.5.0-1_amd64.deb
  3. # 也可以直接在提供的tools目录下找到newt_1.5.0-1_amd64.deb安装文件

检查newt安装

  1. $which newt
  2. /usr/bin/newt
  3. $newt version
  4. Apache Newt version: 1.5.0
  5. #newt命令可以查看newt的详细信息
  6. $newt

1.1.2 Docker容器

http://mynewt.apache.org/latest/get_started/docker.html

1.1.3 创建第一个Mynewt项目

http://mynewt.apache.org/latest/get_started/project_create.html

1.1.4 串口配置

http://mynewt.apache.org/latest/get_started/serial_access.html

参考:

http://mynewt.apache.org/latest/get_started/index.html