http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/ea2670d6/develop/mkdocs/search_index.json
----------------------------------------------------------------------
diff --git a/develop/mkdocs/search_index.json b/develop/mkdocs/search_index.json
index 4de7a25..808a034 100644
--- a/develop/mkdocs/search_index.json
+++ b/develop/mkdocs/search_index.json
@@ -146,49 +146,14 @@
             "title": "Quick Start"
         }, 
         {
-            "location": "/os/get_started/native_tools/", 
-            "text": "Installing Native Mynewt Tools\n\n\nThis page shows how 
to install tools for native Mynewt targets (simulated targets on your 
laptop/computer) without using a Docker container. In other words, it allows 
you to run Mynewt OS as a native application on your Mac or Linux machine to 
simulate a target and use the Newt tool running natively on your machine to 
manage the simulated target. It also allows you to run the test suites for all 
packages not requiring HW support. You may choose to do this instead of using 
the build toolchain and Newt tool available in a Docker container.\n\n\nThis 
page provides guidance for MAC and Linux. See the relevant sections 
below.\n\n\n\n\nSet up toolchain for Mac\n\n\nInstall Brew\n\n\nIf you have not 
already installed Homebrew from the \n\nnewt\n tutorials pages\n, install it. 
\n\n\n\n\nInstall gcc/libc\n\n\nOS X ships with a C compiler called Clang.  To 
build applications for the Mynewt simulator with, a different compiler is used 
as
  default: gcc.\n\n\n$ brew install gcc\n...\n...\n==\n Summary\n\ud83c\udf7a  
/usr/local/Cellar/gcc/5.2.0: 1353 files, 248M\n\n\n\n\n\n\n\nCheck the gcc 
version you have installed (either using brew or previously installed). The 
brew-installed version can be checked using \nbrew list gcc\n. The default 
compiler.yml configuration file in Mynewt expects version 5.x for Mac users, so 
if the installed version is 6.x and you wish to continue with this newer 
version, modify the 
\nmynewt-src-directory\n/repos/apache-mynewt-core/compiler/sim/compiler.yml\n 
file to change the default \ngcc-5\n defined there to \ngcc-6\n. In other 
words, replace the lines shown highlighted below:\n\n\n# OS 
X.\n\ncompiler.path.cc.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.as.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.objdump.DARWIN.OVERWRITE: 
\ngobjdump\n\ncompiler.path.objsize.DARWIN.OVERWRITE: 
\nobjsize\n\ncompiler.path.objcopy.DARWIN.OVERWRITE: 
\ngobjcopy\n\n\n\n\n\n\nwith the following:\n\n\ncompiler.p
 ath.cc.DARWIN.OVERWRITE: \ngcc-6\n\ncompiler.path.as.DARWIN.OVERWRITE: 
\ngcc-6\u201d\n\n\n\n\n\n\n\nIn case you wish to use Clang, you can change your 
\nmynewt-src-directory\n/repos/apache-mynewt-core/compiler/sim/compiler.yml\n 
to use Clang. Delete the gcc-5 DARWIN.OVERWRITE lines highlighted below.\n\n\n# 
OS X.\n\ncompiler.path.cc.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.as.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.objdump.DARWIN.OVERWRITE: 
\ngobjdump\n\ncompiler.path.objsize.DARWIN.OVERWRITE: 
\nobjsize\n\ncompiler.path.objcopy.DARWIN.OVERWRITE: 
\ngobjcopy\n\n\n\n\n\n\n\n\nNOTE:\n Both the newer gcc 6.x and Clang report a 
few warnings but they can be ignored.\n\n\n\n\nFURTHER NOTE:\n Mynewt 
developers mostly use gcc 5.x for sim builds; so it may take a little while to 
fix issues reported by the newer compiler. One option is to \ndisable 
warnings\n. To do that, remove the \n-Werror\n flag as an option for the 
compiler in the  \nmynewt-src-directory\n/repos/apache-mynewt-core
 /compiler/sim/compiler.yml\n file as shown below. \n\n\ncompiler.flags.base: 
\n\n\n    -m32 -Wall -ggdb\n\n\n\n\n\nYou may alternatively choose to \nspecify 
the precise warnings to ignore\n depending on the error thrown by the compiler. 
For example, if you see a \n[-Werror=misleading-indentation]\n error while 
building the sim image, add \n-Wno-misleading-indentation]\n as a compiler flag 
in the same line from the 
\nmynewt-src-directory\n/repos/apache-mynewt-core/compiler/sim/compiler.yml\n 
file.\n\n\ncompiler.flags.base: \n\n\n    -m32 -Wall -Werror -ggdb 
-Wno-misleading-indentation\n\n\n\n\n\nA third option is to simply \ndowngrade 
to gcc 5.x\n.\n\n\n\n\nInstall gdb\n\n\n$ brew install gdb\n...\n...\n==\n 
Summary\n\ud83c\udf7a  /usr/local/Cellar/gdb/7.10.1: XXX 
files,YYM\n\n\n\n\n\n\n\nNOTE:\n When running a program with gdb, you may need 
to sign your gdb\nexecutable.  \nThis page\n\nshows a recipe for gdb signing. 
Alternately you can skip this step and\ncontinue without the abili
 ty to debug your mynewt application on your PC.*\n\n\n\n\nSet up toolchain for 
Linux\n\n\nThe below procedure can be used to set up a Debian-based Linux 
system (e.g.,\nUbuntu).  If you are running a different Linux distribution, you 
will need to\nsubstitute invocations of \napt-get\n in the below steps with the 
package manager\nthat your distro uses.\n\n\n\n\nInstall gcc/libc that will 
produce 32-bit executables:\n\n\n$ sudo apt-get install gcc-multilib 
libc6-i386\n\n\n\n\n\n\n\nInstall gdb\n\n\n$ sudo apt-get install 
gdb\n\nReading package lists... Done\nBuilding dependency tree       \nReading 
state information... Done\nSuggested packages:\n  gdb-doc gdbserver\nThe 
following NEW packages will be installed:\n  gdb\n...\nProcessing triggers for 
man-db (2.6.7.1-1ubuntu1) ...\nSetting up gdb (7.7.1-0ubuntu5~14.04.2) 
...\n\n\n\n\n\n\n\nAt this point you have installed all the necessary software 
to build and test code on a simluator running on your Mac or Linux. Proceed to 
the \nCreate 
 Your First Project\n section.", 
+            "location": "/os/get_started/native_install_intro/", 
+            "text": "Native Installation\n\n\nThis section shows you how to 
install tools on Mac OS and Linux platforms to develop, build, run, and debug 
Mynewt OS applications. You can build Mynewt OS applications to run as a native 
application on your computer or to run on your target board. These tools 
include:\n\n\n\n\n\n\nNewt tool - Tool to create, build, load, and debug a 
mynewt target.\n\n\n\n\nSee \nInstalling the Newt Tool on Mac OS\n to install 
on Mac OS.\n\n\nSee \nInstalling the Newt Tool on Linux\n to install on 
Linux.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nNative toolchain - Native toolchain to 
build and run Mynewt OS as a native application on your computer.\n  (See 
\nInstalling Native Toolchain\n).  \n\n\n\n\n\n\nCross toolchain for ARM - 
Cross toolchain for ARM to build and run a Mynewt OS application on a target 
board\n  (See \nInstalling Cross Tools for ARMs\n).", 
             "title": "toc"
         }, 
         {
-            "location": 
"/os/get_started/native_tools/#installing-native-mynewt-tools", 
-            "text": "This page shows how to install tools for native Mynewt 
targets (simulated targets on your laptop/computer) without using a Docker 
container. In other words, it allows you to run Mynewt OS as a native 
application on your Mac or Linux machine to simulate a target and use the Newt 
tool running natively on your machine to manage the simulated target. It also 
allows you to run the test suites for all packages not requiring HW support. 
You may choose to do this instead of using the build toolchain and Newt tool 
available in a Docker container.  This page provides guidance for MAC and 
Linux. See the relevant sections below.", 
-            "title": "Installing Native Mynewt Tools"
-        }, 
-        {
-            "location": 
"/os/get_started/native_tools/#set-up-toolchain-for-mac", 
-            "text": "", 
-            "title": "Set up toolchain for Mac"
-        }, 
-        {
-            "location": "/os/get_started/native_tools/#install-brew", 
-            "text": "If you have not already installed Homebrew from the  newt 
 tutorials pages , install it.", 
-            "title": "Install Brew"
-        }, 
-        {
-            "location": "/os/get_started/native_tools/#install-gcclibc", 
-            "text": "OS X ships with a C compiler called Clang.  To build 
applications for the Mynewt simulator with, a different compiler is used as 
default: gcc.  $ brew install gcc\n...\n...\n==  Summary\n\ud83c\udf7a  
/usr/local/Cellar/gcc/5.2.0: 1353 files, 248M   Check the gcc version you have 
installed (either using brew or previously installed). The brew-installed 
version can be checked using  brew list gcc . The default compiler.yml 
configuration file in Mynewt expects version 5.x for Mac users, so if the 
installed version is 6.x and you wish to continue with this newer version, 
modify the  mynewt-src-directory 
/repos/apache-mynewt-core/compiler/sim/compiler.yml  file to change the default 
 gcc-5  defined there to  gcc-6 . In other words, replace the lines shown 
highlighted below:  # OS X. compiler.path.cc.DARWIN.OVERWRITE:  gcc-5  
compiler.path.as.DARWIN.OVERWRITE:  gcc-5  
compiler.path.objdump.DARWIN.OVERWRITE:  gobjdump 
\ncompiler.path.objsize.DARWIN.OVERWRITE:  objsize 
 \ncompiler.path.objcopy.DARWIN.OVERWRITE:  gobjcopy   with the following:  
compiler.path.cc.DARWIN.OVERWRITE:  gcc-6 \ncompiler.path.as.DARWIN.OVERWRITE:  
gcc-6\u201d   In case you wish to use Clang, you can change your  
mynewt-src-directory /repos/apache-mynewt-core/compiler/sim/compiler.yml  to 
use Clang. Delete the gcc-5 DARWIN.OVERWRITE lines highlighted below.  # OS X. 
compiler.path.cc.DARWIN.OVERWRITE:  gcc-5  compiler.path.as.DARWIN.OVERWRITE:  
gcc-5  compiler.path.objdump.DARWIN.OVERWRITE:  gobjdump 
\ncompiler.path.objsize.DARWIN.OVERWRITE:  objsize 
\ncompiler.path.objcopy.DARWIN.OVERWRITE:  gobjcopy    NOTE:  Both the newer 
gcc 6.x and Clang report a few warnings but they can be ignored.   FURTHER 
NOTE:  Mynewt developers mostly use gcc 5.x for sim builds; so it may take a 
little while to fix issues reported by the newer compiler. One option is to  
disable warnings . To do that, remove the  -Werror  flag as an option for the 
compiler in the   mynewt-src-directory /repos/apa
 che-mynewt-core/compiler/sim/compiler.yml  file as shown below.   
compiler.flags.base:       -m32 -Wall -ggdb  You may alternatively choose to  
specify the precise warnings to ignore  depending on the error thrown by the 
compiler. For example, if you see a  [-Werror=misleading-indentation]  error 
while building the sim image, add  -Wno-misleading-indentation]  as a compiler 
flag in the same line from the  mynewt-src-directory 
/repos/apache-mynewt-core/compiler/sim/compiler.yml  file.  
compiler.flags.base:       -m32 -Wall -Werror -ggdb -Wno-misleading-indentation 
 A third option is to simply  downgrade to gcc 5.x .", 
-            "title": "Install gcc/libc"
-        }, 
-        {
-            "location": "/os/get_started/native_tools/#install-gdb", 
-            "text": "$ brew install gdb\n...\n...\n==  Summary\n\ud83c\udf7a  
/usr/local/Cellar/gdb/7.10.1: XXX files,YYM   NOTE:  When running a program 
with gdb, you may need to sign your gdb\nexecutable.   This page \nshows a 
recipe for gdb signing. Alternately you can skip this step and\ncontinue 
without the ability to debug your mynewt application on your PC.*", 
-            "title": "Install gdb"
-        }, 
-        {
-            "location": 
"/os/get_started/native_tools/#set-up-toolchain-for-linux", 
-            "text": "The below procedure can be used to set up a Debian-based 
Linux system (e.g.,\nUbuntu).  If you are running a different Linux 
distribution, you will need to\nsubstitute invocations of  apt-get  in the 
below steps with the package manager\nthat your distro uses.", 
-            "title": "Set up toolchain for Linux"
-        }, 
-        {
-            "location": 
"/os/get_started/native_tools/#install-gcclibc-that-will-produce-32-bit-executables",
 
-            "text": "$ sudo apt-get install gcc-multilib libc6-i386", 
-            "title": "Install gcc/libc that will produce 32-bit executables:"
-        }, 
-        {
-            "location": "/os/get_started/native_tools/#install-gdb_1", 
-            "text": "$ sudo apt-get install gdb\n\nReading package lists... 
Done\nBuilding dependency tree       \nReading state information... 
Done\nSuggested packages:\n  gdb-doc gdbserver\nThe following NEW packages will 
be installed:\n  gdb\n...\nProcessing triggers for man-db (2.6.7.1-1ubuntu1) 
...\nSetting up gdb (7.7.1-0ubuntu5~14.04.2) ...   At this point you have 
installed all the necessary software to build and test code on a simluator 
running on your Mac or Linux. Proceed to the  Create Your First Project  
section.", 
-            "title": "Install gdb"
+            "location": 
"/os/get_started/native_install_intro/#native-installation", 
+            "text": "This section shows you how to install tools on Mac OS and 
Linux platforms to develop, build, run, and debug Mynewt OS applications. You 
can build Mynewt OS applications to run as a native application on your 
computer or to run on your target board. These tools include:    Newt tool - 
Tool to create, build, load, and debug a mynewt target.   See  Installing the 
Newt Tool on Mac OS  to install on Mac OS.  See  Installing the Newt Tool on 
Linux  to install on Linux.        Native toolchain - Native toolchain to build 
and run Mynewt OS as a native application on your computer.\n  (See  Installing 
Native Toolchain ).      Cross toolchain for ARM - Cross toolchain for ARM to 
build and run a Mynewt OS application on a target board\n  (See  Installing 
Cross Tools for ARMs ).", 
+            "title": "Native Installation"
         }, 
         {
             "location": "/newt/install/newt_mac/", 
@@ -222,27 +187,27 @@
         }, 
         {
             "location": "/newt/install/newt_linux/", 
-            "text": "Installing Newt on Linux\n\n\nYou can install the latest 
stable release (1.0.0) of newt from a Debian binary package (amd64) or from a 
Debian source package. This page shows you how to:\n\n\n\n\nSet up your 
computer to retrieve Debian packages from the runtimeco debian package 
repository.\n\n\nInstall the latest stable release version of newt from a 
Debian binary package. \n\n\nInstall the latest stable release version of newt 
from a Debian source package.\n\n\n\n\nIf you are running on an amd64 platform, 
we recommend that you install from the binary package.\n\n\nNote:\n See 
\nSetting Up an Go Environment to Contribute to Newt and Newtmgr Tools\n if you 
want to:  \n\n\n\n\nUse the newt tool with the latest updates from the master 
branch. The master branch may be unstable and we recommend that you use the 
latest stable release version.\n\n\nContribute to the newt tool. 
\n\n\n\n\n\n\nSetting Up Your Computer to Get Packages from runtimeco\n\n\nThe 
newt Debian pac
 kages are stored in a private repository on 
\nhttps://github/runtimeco/debian-mynewt\n. \n\n\nNote:\n You will only need to 
perform these steps only once on your computer.\nThe following steps must be 
performed on your computer:\n\n\n\n\nAdd the \napt-transport-https\n package to 
use HTTPS to retrieve packages. \n\n\nDownload the public key for the runtimeco 
debian repository and import the key into the apt keychain.\n\n\nAdd the 
repository for the binary and source packages to the apt source 
list.\n\n\n\n\n\nAdd the apt-transport-https package:\n\n\n$sudo apt-get 
update\n$sudo apt-get install apt-transport-https\n\n\n\n\n\n\n\nDownload the 
public key for the runtimeco apt repo (\nNote:\n There is  \n-\n after the 
add):\n\n\nwget -qO - 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/mynewt.gpg.key 
| sudo apt-key add -\n\n\n\n\n\n\n\nAdd the repository for the binary and 
source packages to the apt source list:\n\n\n$sudo -s\n[sudo] password for 
\nuser\n:\nroot$ cat \
 n /etc/apt/sources.list.d/mynewt.list \nEOF\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main\nEOF\n\n\n\n\n\n\nCheck the content of the file:\n\n\nroot$more 
/etc/apt/sources.list.d//mynewt.list\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main\n\n\n\n\n\n \n\n\nExit the root 
shell:\n\n\nroot$exit\n\n\n\n\n\n\n\nInstalling the Latest Release of Newt from 
a Binary Package\n\n\nFor Linux amd64 platform, you can install the latest 
stable version (1.0.0) of newt from the newt Debian binary package:\n\n\n$sudo 
apt-get update\n$sudo apt-get install newt\nReading package lists... 
Done\nBuilding dependency tree       \nReading state information... Done\n\n    
  ...\n\nPreparing to unpack .../newt_1.0.0-1_amd64.deb ...\nUnpacking newt 
(1.0.0-1) ...\nSettin
 g up newt (1.0.0-1) ...\n\n\n\n\n\n\nSee \nChecking the Installed Version of 
Newt\n to verify that you are using the installed version of 
newt.\n\n\n\n\nInstalling the Latest Stable Release of Newt from a Source 
Package\n\n\nIf you are running Linux on a different architecture, you can 
install the Debian source package for the latest stable release (1.0.0) of 
newt. The installation of the source package builds the newt binary and creates 
a Debian binary package that you then install.\n\n\nNote\n: Newt version 1.0.0 
has been tested on Linux amd64 platform. Version 1.0.0 does not build on the 32 
bit platform but have been fixed for the next release.\n\n\n\n\nInstalling Go 
1.7\n\n\nYou need Go version 1.7 or higher to build Newt version 1.0.0.  
Currently, the latest Go version that Ubuntu installs is 1.6.  Run \ngo 
version\n to check if you have Go 1.7 installed. \n\n\n\n\nInstall Go version 
1.7:\n\n\n$sudo apt-get install golang-1.7-go\nReading package lists... Done\n  
   ...\nUnpacki
 ng golang-1.7-go (1.7.1-2ubuntu1) ...\nSetting up golang-1.7-go 
(1.7.1-2ubuntu1) ...\n$\n$sudo ln -sf ../lib/go-1.7/bin/go /usr/bin/go\n$go 
version\ngo version go1.7.1 linux/amd64\n\n\n\n\n\nYou can also download 
version 1.7 from \nhttps://golang.org/dl/\n. \n\n\n\n\nInstalling from the 
Source Package\n\n\nCreate a directory and change into the directory, download 
the source package, and build a binary package from the source 
package:\n\n\nmkdir newt_source\n$cd newt_source\n$sudo apt-get --build source 
newt\n[sudo] password for \nuser\n: \nReading package lists... Done\nNeed to 
get 1,866 kB of source archives.\nGet:1 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (dsc) [795 B]\nGet:2 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (tar) [1,864 kB]\nGet:3 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (diff) [2,000 B]\nFetched 1,866 kB in 1s (1,222 kB/s)\nd
 pkg-source: warning: extracting unsigned source package 
(newt_1.0.0-1.dsc)\ndpkg-source: info: extracting newt in 
newt-1.0.0\ndpkg-source: info: unpacking newt_1.0.0.orig.tar.gz\ndpkg-source: 
info: unpacking newt_1.0.0-1.debian.tar.xz\n\n           ...\n\ndpkg-deb: 
building package \nnewt\n in \n../newt_1.0.0-1_amd64.deb\n.\n dpkg-genchanges 
--build=any,all \n../newt_1.0.0-1_amd64.changes\ndpkg-genchanges: info: 
binary-only upload (no source code included)\n dpkg-source --after-build 
newt-1.0.0\ndpkg-buildpackage: info: binary-only upload (no source 
included)\nW: Can\nt drop privileges for downloading as file 
\nnewt_1.0.0-1.dsc\n couldn\nt be accessed by user \n_apt\n. - pkgAcquire::Run 
(13: Permission denied)\n\n\n\n\n\nNote:\n You can ignore the \"Permission 
denied: warning message at the end of the command.\n\n\n\nInstall the newt 
binary package that is created from the source package:\n\n\n$sudo dpkg -i 
newt_1.0.0-1_amd64.deb \nSelecting previously unselected package newt.\n(Rea
 ding database ... 252969 files and directories currently 
installed.)\nPreparing to unpack newt_1.0.0-1_amd64.deb ...\nUnpacking newt 
(1.0.0-1) ...\nSetting up newt (1.0.0-1) ...\n\n\n\n\n\n\n\n Checking the 
Installed Version of Newt\n\n\nAfter you have installed newt from either a 
Debian binary or source package, check that you are using the installed version 
of newt from \n/usr/bin\n. \n\n\nCheck the modification time of the binary and 
the newt tool that you are using:\n\n\n$ls -l /usr/bin/newt\n-rwxr-xr-x 1 root 
root 6919280 Apr 22 10:09 /usr/bin/newt\n$which newt\n/usr/bin/newt\n$newt 
version\nApache Newt (incubating) version: 1.0.0\n\n\n\n\n\nNote:\n If you 
previously built newt from source and the output of \nwhich newt\n shows 
\"$GOPATH/bin/newt\", you will need to move \"$GOPATH/bin\" after \"/usr/bin\" 
in your $PATH and export your $PATH.\n\n\n\nGet information about 
newt:\n\n\n$newt\nNewt allows you to create your own embedded application based 
on the Mynewt\noperating syst
 em. Newt provides both build and package management in a single\ntool, which 
allows you to compose an embedded application, and set of\nprojects, and then 
build the necessary artifacts from those projects. For more\ninformation on the 
Mynewt operating system, please visit\nhttps://mynewt.apache.org/.\n\nPlease 
use the newt help command, and specify the name of the command you want\nhelp 
for, for help on how to use a specific command\n\nUsage:\n  newt [flags]\n  
newt [command]\n\nExamples:\n  newt\n  newt help [\ncommand-name\n]\n    For 
help on \ncommand-name\n.  If not specified, print this message.\n\nAvailable 
Commands:\n  build        Build one or more targets\n  clean        Delete 
build artifacts for one or more targets\n  create-image Add image header to 
target binary\n  debug        Open debugger session to target\n  info         
Show project info\n  install      Install project dependencies\n  load         
Load built target to board\n  mfg          Manufacturing flash image
  commands\n  new          Create a new project\n  pkg          Create and 
manage packages in the current workspace\n  run          
build/create-image/download/debug \ntarget\n\n  size         Size of target 
components\n  sync         Synchronize project dependencies\n  target       
Commands to create, delete, configure, and query targets\n  test         
Executes unit tests for one or more packages\n  upgrade      Upgrade project 
dependencies\n  vals         Display valid values for the specified element 
type(s)\n  version      Display the Newt version number\n\nFlags:\n  -h, --help 
             Help for newt commands\n  -j, --jobs int          Number of 
concurrent build jobs (default 8)\n  -l, --loglevel string   Log level (default 
\nWARN\n)\n  -o, --outfile string    Filename to tee output to\n  -q, --quiet   
          Be quiet; only display error output\n  -s, --silent            Be 
silent; don\nt output anything\n  -v, --verbose           Enable verbose output 
when executing comm
 ands\n\nUse \nnewt [command] --help\n for more information about a command.", 
+            "text": "Installing Newt on Linux\n\n\nYou can install the latest 
stable release (1.0.0) of the newt tool from a Debian binary package (amd64) or 
from a Debian source package. This page shows you how to:\n\n\n\n\nSet up your 
computer to retrieve Debian packages from the runtimeco debian package 
repository.\n\n\nInstall the latest stable release version of newt from a 
Debian binary package. \n\n\nInstall the latest stable release version of newt 
from a Debian source package.\n\n\n\n\nIf you are installing on an amd64 
platform, we recommend that you install from the binary package.\n\n\nNote:\n 
See \nSetting Up an Go Environment to Contribute to Newt and Newtmgr Tools\n if 
you want to:  \n\n\n\n\nUse the newt tool with the latest updates from the 
master branch. The master branch may be unstable and we recommend that you use 
the latest stable release version.\n\n\nContribute to the newt tool. 
\n\n\n\n\n\n\nSetting Up Your Computer to Get Packages from runtimeco\n\n\nThe 
new
 t Debian packages are stored in a private repository on 
\nhttps://github/runtimeco/debian-mynewt\n.  The following steps must be 
performed on your computer to retreive packages from the 
repository:\n\n\nNote:\n You only need to perform this setup once on your 
computer.\n\n\n\n\nInstall the \napt-transport-https\n package to use HTTPS to 
retrieve packages. \n\n\nDownload the public key for the runtimeco debian 
repository and import the key into the apt keychain.\n\n\nAdd the repository 
for the binary and source packages to the apt source list.\n\n\n\n\n\nInstall 
the apt-transport-https package:\n\n\n$sudo apt-get update\n$sudo apt-get 
install apt-transport-https\n\n\n\n\n\n\n\nDownload the public key for the 
runtimeco apt repo (\nNote:\n There is  a \n-\n after  \napt-key 
add\n):\n\n\nwget -qO - 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/mynewt.gpg.key 
| sudo apt-key add -\n\n\n\n\n\n\n\nAdd the repository for the binary and 
source packages to the \nmynewt.list\
 n apt source list file.\n\n\n$sudo -s\n[sudo] password for \nuser\n:\nroot$ 
cat \n /etc/apt/sources.list.d/mynewt.list \nEOF\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main\nEOF\nroot$exit\n\n\n\n\n\nNote:\n Do not forget to exit the root 
shell.\n\n\n\nVerify the content of the source list file:\n\n\n$more 
/etc/apt/sources.list.d/mynewt.list\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main\n\n\n\n\n\n \n\n\nInstalling the Latest Release of Newt from a 
Binary Package\n\n\nFor Linux amd64 platforms, you can install the latest 
stable version (1.0.0) of newt from the newt Debian binary package:\n\n\n$sudo 
apt-get update\n$sudo apt-get install newt\nReading package lists... 
Done\nBuilding dependency tree       \nReading state information... Done\n\n
       ...\n\nPreparing to unpack .../newt_1.0.0-1_amd64.deb ...\nUnpacking 
newt (1.0.0-1) ...\nSetting up newt (1.0.0-1) ...\n\n\n\n\n\n\nSee \nChecking 
the Installed Version of Newt\n to verify that you are using the installed 
version of newt.\n\n\n\n\nInstalling the Latest Stable Release of Newt from a 
Source Package\n\n\nIf you are running Linux on a different architecture, you 
can install the Debian source package for the latest stable release (1.0.0) of 
newt. The installation of the source package builds the newt binary and creates 
a Debian binary package that you then install.\n\n\nNote\n: Newt version 1.0.0 
has been tested on Linux amd64 platforms. Version 1.0.0 does not build on 32 
bit platforms but have been fixed for the next release.\n\n\n\n\nInstalling Go 
1.7\n\n\nYou need Go version 1.7 or higher to build Newt version 1.0.0.  
Currently, the latest Go version that Ubuntu installs is 1.6.  Run \ngo 
version\n to check if you have Go 1.7 installed. \n\n\n\n\nInstall Go vers
 ion 1.7:\n\n\n$sudo apt-get install golang-1.7-go\nReading package lists... 
Done\n     ...\nUnpacking golang-1.7-go (1.7.1-2ubuntu1) ...\nSetting up 
golang-1.7-go (1.7.1-2ubuntu1) ...\n$\n$sudo ln -sf ../lib/go-1.7/bin/go 
/usr/bin/go\n$go version\ngo version go1.7.1 linux/amd64\n\n\n\n\n\nYou can 
also download version 1.7 from \nhttps://golang.org/dl/\n. \n\n\n\n\nInstalling 
from the Source Package\n\n\nCreate a directory and change into the directory, 
download the source package, and build a binary package from the source 
package:\n\n\nmkdir newt_source\n$cd newt_source\n$sudo apt-get --build source 
newt\n[sudo] password for \nuser\n: \nReading package lists... Done\nNeed to 
get 1,866 kB of source archives.\nGet:1 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (dsc) [795 B]\nGet:2 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (tar) [1,864 kB]\nGet:3 
https://raw.githubusercontent.com/runtimeco/deb
 ian-mynewt/master latest/main newt 1.0.0-1 (diff) [2,000 B]\nFetched 1,866 kB 
in 1s (1,222 kB/s)\ndpkg-source: warning: extracting unsigned source package 
(newt_1.0.0-1.dsc)\ndpkg-source: info: extracting newt in 
newt-1.0.0\ndpkg-source: info: unpacking newt_1.0.0.orig.tar.gz\ndpkg-source: 
info: unpacking newt_1.0.0-1.debian.tar.xz\n\n           ...\n\ndpkg-deb: 
building package \nnewt\n in \n../newt_1.0.0-1_amd64.deb\n.\n dpkg-genchanges 
--build=any,all \n../newt_1.0.0-1_amd64.changes\ndpkg-genchanges: info: 
binary-only upload (no source code included)\n dpkg-source --after-build 
newt-1.0.0\ndpkg-buildpackage: info: binary-only upload (no source 
included)\nW: Can\nt drop privileges for downloading as file 
\nnewt_1.0.0-1.dsc\n couldn\nt be accessed by user \n_apt\n. - pkgAcquire::Run 
(13: Permission denied)\n\n\n\n\n\nNote:\n You can ignore the \"Permission 
denied\" warning message at the end of the command.\n\n\n\nInstall the newt 
binary package that is created from the source pack
 age:\n\n\nNote:\n The file name for the binary package has the format: 
newt_1.0.0-1_\narch\n.deb,  where \narch\n is a value that identifies your host 
architecture.  \n\n\n$sudo dpkg -i newt_1.0.0-1_amd64.deb \nSelecting 
previously unselected package newt.\n(Reading database ... 252969 files and 
directories currently installed.)\nPreparing to unpack newt_1.0.0-1_amd64.deb 
...\nUnpacking newt (1.0.0-1) ...\nSetting up newt (1.0.0-1) 
...\n\n\n\n\n\n\n\n Checking the Installed Version of Newt\n\n\nAfter you have 
installed newt from either a Debian binary or source package, check that you 
are using the installed version of newt from \n/usr/bin\n. \n\n\nCheck the 
modification time of the binary and the newt tool that you are using:\n\n\n$ls 
-l /usr/bin/newt\n-rwxr-xr-x 1 root root 6919280 Apr 22 10:09 
/usr/bin/newt\n$which newt\n/usr/bin/newt\n$newt version\nApache Newt 
(incubating) version: 1.0.0\n\n\n\n\n\nNote:\n If you previously built newt 
from source and the output of \nwhich newt\
 n shows \"$GOPATH/bin/newt\", you will need to move \"$GOPATH/bin\" after 
\"/usr/bin\" for your PATH environment variable and export it. \n\n\n\nGet 
information about newt:\n\n\n$newt\nNewt allows you to create your own embedded 
application based on the Mynewt\noperating system. Newt provides both build and 
package management in a single\ntool, which allows you to compose an embedded 
application, and set of\nprojects, and then build the necessary artifacts from 
those projects. For more\ninformation on the Mynewt operating system, please 
visit\nhttps://mynewt.apache.org/.\n\nPlease use the newt help command, and 
specify the name of the command you want\nhelp for, for help on how to use a 
specific command\n\nUsage:\n  newt [flags]\n  newt [command]\n\nExamples:\n  
newt\n  newt help [\ncommand-name\n]\n    For help on \ncommand-name\n.  If not 
specified, print this message.\n\nAvailable Commands:\n  build        Build one 
or more targets\n  clean        Delete build artifacts for one o
 r more targets\n  create-image Add image header to target binary\n  debug      
  Open debugger session to target\n  info         Show project info\n  install  
    Install project dependencies\n  load         Load built target to board\n  
mfg          Manufacturing flash image commands\n  new          Create a new 
project\n  pkg          Create and manage packages in the current workspace\n  
run          build/create-image/download/debug \ntarget\n\n  size         Size 
of target components\n  sync         Synchronize project dependencies\n  target 
      Commands to create, delete, configure, and query targets\n  test         
Executes unit tests for one or more packages\n  upgrade      Upgrade project 
dependencies\n  vals         Display valid values for the specified element 
type(s)\n  version      Display the Newt version number\n\nFlags:\n  -h, --help 
             Help for newt commands\n  -j, --jobs int          Number of 
concurrent build jobs (default 8)\n  -l, --loglevel string 
   Log level (default \nWARN\n)\n  -o, --outfile string    Filename to tee 
output to\n  -q, --quiet             Be quiet; only display error output\n  -s, 
--silent            Be silent; don\nt output anything\n  -v, --verbose          
 Enable verbose output when executing commands\n\nUse \nnewt [command] --help\n 
for more information about a command.", 
             "title": "Install Newt on Linux"
         }, 
         {
             "location": "/newt/install/newt_linux/#installing-newt-on-linux", 
-            "text": "You can install the latest stable release (1.0.0) of newt 
from a Debian binary package (amd64) or from a Debian source package. This page 
shows you how to:   Set up your computer to retrieve Debian packages from the 
runtimeco debian package repository.  Install the latest stable release version 
of newt from a Debian binary package.   Install the latest stable release 
version of newt from a Debian source package.   If you are running on an amd64 
platform, we recommend that you install from the binary package.  Note:  See  
Setting Up an Go Environment to Contribute to Newt and Newtmgr Tools  if you 
want to:     Use the newt tool with the latest updates from the master branch. 
The master branch may be unstable and we recommend that you use the latest 
stable release version.  Contribute to the newt tool.", 
+            "text": "You can install the latest stable release (1.0.0) of the 
newt tool from a Debian binary package (amd64) or from a Debian source package. 
This page shows you how to:   Set up your computer to retrieve Debian packages 
from the runtimeco debian package repository.  Install the latest stable 
release version of newt from a Debian binary package.   Install the latest 
stable release version of newt from a Debian source package.   If you are 
installing on an amd64 platform, we recommend that you install from the binary 
package.  Note:  See  Setting Up an Go Environment to Contribute to Newt and 
Newtmgr Tools  if you want to:     Use the newt tool with the latest updates 
from the master branch. The master branch may be unstable and we recommend that 
you use the latest stable release version.  Contribute to the newt tool.", 
             "title": "Installing Newt on Linux"
         }, 
         {
             "location": 
"/newt/install/newt_linux/#setting-up-your-computer-to-get-packages-from-runtimeco",
 
-            "text": "The newt Debian packages are stored in a private 
repository on  https://github/runtimeco/debian-mynewt .   Note:  You will only 
need to perform these steps only once on your computer.\nThe following steps 
must be performed on your computer:   Add the  apt-transport-https  package to 
use HTTPS to retrieve packages.   Download the public key for the runtimeco 
debian repository and import the key into the apt keychain.  Add the repository 
for the binary and source packages to the apt source list.   \nAdd the 
apt-transport-https package:  $sudo apt-get update\n$sudo apt-get install 
apt-transport-https   Download the public key for the runtimeco apt repo ( 
Note:  There is   -  after the add):  wget -qO - 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/mynewt.gpg.key 
| sudo apt-key add -   Add the repository for the binary and source packages to 
the apt source list:  $sudo -s\n[sudo] password for  user :\nroot$ cat   
/etc/apt/sources.list.d/mynewt.lis
 t  EOF\ndeb https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main\ndeb-src 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\nEOF  \nCheck the content of the file:  root$more 
/etc/apt/sources.list.d//mynewt.list\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main     Exit the root shell:  root$exit", 
+            "text": "The newt Debian packages are stored in a private 
repository on  https://github/runtimeco/debian-mynewt .  The following steps 
must be performed on your computer to retreive packages from the repository:  
Note:  You only need to perform this setup once on your computer.   Install the 
 apt-transport-https  package to use HTTPS to retrieve packages.   Download the 
public key for the runtimeco debian repository and import the key into the apt 
keychain.  Add the repository for the binary and source packages to the apt 
source list.   \nInstall the apt-transport-https package:  $sudo apt-get 
update\n$sudo apt-get install apt-transport-https   Download the public key for 
the runtimeco apt repo ( Note:  There is  a  -  after   apt-key add ):  wget 
-qO - 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master/mynewt.gpg.key 
| sudo apt-key add -   Add the repository for the binary and source packages to 
the  mynewt.list  apt source list file.  $sudo -s\n[sudo] pas
 sword for  user :\nroot$ cat   /etc/apt/sources.list.d/mynewt.list  EOF\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main\nEOF\nroot$exit  Note:  Do not forget to exit the root shell.  
\nVerify the content of the source list file:  $more 
/etc/apt/sources.list.d/mynewt.list\ndeb 
https://raw.githubusercontent.com/runtimeco/debian-package/master latest 
main\ndeb-src https://raw.githubusercontent.com/runtimeco/debian-package/master 
latest main", 
             "title": "Setting Up Your Computer to Get Packages from runtimeco"
         }, 
         {
             "location": 
"/newt/install/newt_linux/#installing-the-latest-release-of-newt-from-a-binary-package",
 
-            "text": "For Linux amd64 platform, you can install the latest 
stable version (1.0.0) of newt from the newt Debian binary package:  $sudo 
apt-get update\n$sudo apt-get install newt\nReading package lists... 
Done\nBuilding dependency tree       \nReading state information... Done\n\n    
  ...\n\nPreparing to unpack .../newt_1.0.0-1_amd64.deb ...\nUnpacking newt 
(1.0.0-1) ...\nSetting up newt (1.0.0-1) ...  \nSee  Checking the Installed 
Version of Newt  to verify that you are using the installed version of newt.", 
+            "text": "For Linux amd64 platforms, you can install the latest 
stable version (1.0.0) of newt from the newt Debian binary package:  $sudo 
apt-get update\n$sudo apt-get install newt\nReading package lists... 
Done\nBuilding dependency tree       \nReading state information... Done\n\n    
  ...\n\nPreparing to unpack .../newt_1.0.0-1_amd64.deb ...\nUnpacking newt 
(1.0.0-1) ...\nSetting up newt (1.0.0-1) ...  \nSee  Checking the Installed 
Version of Newt  to verify that you are using the installed version of newt.", 
             "title": "Installing the Latest Release of Newt from a Binary 
Package"
         }, 
         {
             "location": 
"/newt/install/newt_linux/#installing-the-latest-stable-release-of-newt-from-a-source-package",
 
-            "text": "If you are running Linux on a different architecture, you 
can install the Debian source package for the latest stable release (1.0.0) of 
newt. The installation of the source package builds the newt binary and creates 
a Debian binary package that you then install.  Note : Newt version 1.0.0 has 
been tested on Linux amd64 platform. Version 1.0.0 does not build on the 32 bit 
platform but have been fixed for the next release.", 
+            "text": "If you are running Linux on a different architecture, you 
can install the Debian source package for the latest stable release (1.0.0) of 
newt. The installation of the source package builds the newt binary and creates 
a Debian binary package that you then install.  Note : Newt version 1.0.0 has 
been tested on Linux amd64 platforms. Version 1.0.0 does not build on 32 bit 
platforms but have been fixed for the next release.", 
             "title": "Installing the Latest Stable Release of Newt from a 
Source Package"
         }, 
         {
@@ -252,10 +217,55 @@
         }, 
         {
             "location": 
"/newt/install/newt_linux/#installing-from-the-source-package", 
-            "text": "Create a directory and change into the directory, 
download the source package, and build a binary package from the source 
package:  mkdir newt_source\n$cd newt_source\n$sudo apt-get --build source 
newt\n[sudo] password for  user : \nReading package lists... Done\nNeed to get 
1,866 kB of source archives.\nGet:1 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (dsc) [795 B]\nGet:2 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (tar) [1,864 kB]\nGet:3 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (diff) [2,000 B]\nFetched 1,866 kB in 1s (1,222 
kB/s)\ndpkg-source: warning: extracting unsigned source package 
(newt_1.0.0-1.dsc)\ndpkg-source: info: extracting newt in 
newt-1.0.0\ndpkg-source: info: unpacking newt_1.0.0.orig.tar.gz\ndpkg-source: 
info: unpacking newt_1.0.0-1.debian.tar.xz\n\n           ...\n\ndpkg-deb: 
building package  newt  in 
  ../newt_1.0.0-1_amd64.deb .\n dpkg-genchanges --build=any,all  
../newt_1.0.0-1_amd64.changes\ndpkg-genchanges: info: binary-only upload (no 
source code included)\n dpkg-source --after-build 
newt-1.0.0\ndpkg-buildpackage: info: binary-only upload (no source 
included)\nW: Can t drop privileges for downloading as file  newt_1.0.0-1.dsc  
couldn t be accessed by user  _apt . - pkgAcquire::Run (13: Permission denied)  
Note:  You can ignore the \"Permission denied: warning message at the end of 
the command.  \nInstall the newt binary package that is created from the source 
package:  $sudo dpkg -i newt_1.0.0-1_amd64.deb \nSelecting previously 
unselected package newt.\n(Reading database ... 252969 files and directories 
currently installed.)\nPreparing to unpack newt_1.0.0-1_amd64.deb 
...\nUnpacking newt (1.0.0-1) ...\nSetting up newt (1.0.0-1) ...", 
+            "text": "Create a directory and change into the directory, 
download the source package, and build a binary package from the source 
package:  mkdir newt_source\n$cd newt_source\n$sudo apt-get --build source 
newt\n[sudo] password for  user : \nReading package lists... Done\nNeed to get 
1,866 kB of source archives.\nGet:1 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (dsc) [795 B]\nGet:2 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (tar) [1,864 kB]\nGet:3 
https://raw.githubusercontent.com/runtimeco/debian-mynewt/master latest/main 
newt 1.0.0-1 (diff) [2,000 B]\nFetched 1,866 kB in 1s (1,222 
kB/s)\ndpkg-source: warning: extracting unsigned source package 
(newt_1.0.0-1.dsc)\ndpkg-source: info: extracting newt in 
newt-1.0.0\ndpkg-source: info: unpacking newt_1.0.0.orig.tar.gz\ndpkg-source: 
info: unpacking newt_1.0.0-1.debian.tar.xz\n\n           ...\n\ndpkg-deb: 
building package  newt  in 
  ../newt_1.0.0-1_amd64.deb .\n dpkg-genchanges --build=any,all  
../newt_1.0.0-1_amd64.changes\ndpkg-genchanges: info: binary-only upload (no 
source code included)\n dpkg-source --after-build 
newt-1.0.0\ndpkg-buildpackage: info: binary-only upload (no source 
included)\nW: Can t drop privileges for downloading as file  newt_1.0.0-1.dsc  
couldn t be accessed by user  _apt . - pkgAcquire::Run (13: Permission denied)  
Note:  You can ignore the \"Permission denied\" warning message at the end of 
the command.  \nInstall the newt binary package that is created from the source 
package:  Note:  The file name for the binary package has the format: 
newt_1.0.0-1_ arch .deb,  where  arch  is a value that identifies your host 
architecture.    $sudo dpkg -i newt_1.0.0-1_amd64.deb \nSelecting previously 
unselected package newt.\n(Reading database ... 252969 files and directories 
currently installed.)\nPreparing to unpack newt_1.0.0-1_amd64.deb 
...\nUnpacking newt (1.0.0-1) ...\nSetting up newt (1.0.
 0-1) ...", 
             "title": "Installing from the Source Package"
         }, 
         {
+            "location": "/os/get_started/native_tools/", 
+            "text": "Installing Native Mynewt Tools\n\n\nThis page shows how 
to install tools for native Mynewt targets (simulated targets on your 
laptop/computer) without using a Docker container. In other words, it allows 
you to run Mynewt OS as a native application on your Mac or Linux machine to 
simulate a target and use the Newt tool running natively on your machine to 
manage the simulated target. It also allows you to run the test suites for all 
packages not requiring HW support. You may choose to do this instead of using 
the build toolchain and Newt tool available in a Docker container.\n\n\nThis 
page provides guidance for MAC and Linux. See the relevant sections 
below.\n\n\n\n\nSet up toolchain for Mac\n\n\nInstall Brew\n\n\nIf you have not 
already installed Homebrew from the \n\nnewt\n tutorials pages\n, install it. 
\n\n\n\n\nInstall gcc/libc\n\n\nOS X ships with a C compiler called Clang.  To 
build applications for the Mynewt simulator with, a different compiler is used 
as
  default: gcc.\n\n\n$ brew install gcc\n...\n...\n==\n Summary\n\ud83c\udf7a  
/usr/local/Cellar/gcc/5.2.0: 1353 files, 248M\n\n\n\n\n\n\n\nCheck the gcc 
version you have installed (either using brew or previously installed). The 
brew-installed version can be checked using \nbrew list gcc\n. The default 
compiler.yml configuration file in Mynewt expects version 5.x for Mac users, so 
if the installed version is 6.x and you wish to continue with this newer 
version, modify the 
\nmynewt-src-directory\n/repos/apache-mynewt-core/compiler/sim/compiler.yml\n 
file to change the default \ngcc-5\n defined there to \ngcc-6\n. In other 
words, replace the lines shown highlighted below:\n\n\n# OS 
X.\n\ncompiler.path.cc.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.as.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.objdump.DARWIN.OVERWRITE: 
\ngobjdump\n\ncompiler.path.objsize.DARWIN.OVERWRITE: 
\nobjsize\n\ncompiler.path.objcopy.DARWIN.OVERWRITE: 
\ngobjcopy\n\n\n\n\n\n\nwith the following:\n\n\ncompiler.p
 ath.cc.DARWIN.OVERWRITE: \ngcc-6\n\ncompiler.path.as.DARWIN.OVERWRITE: 
\ngcc-6\u201d\n\n\n\n\n\n\n\nIn case you wish to use Clang, you can change your 
\nmynewt-src-directory\n/repos/apache-mynewt-core/compiler/sim/compiler.yml\n 
to use Clang. Delete the gcc-5 DARWIN.OVERWRITE lines highlighted below.\n\n\n# 
OS X.\n\ncompiler.path.cc.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.as.DARWIN.OVERWRITE: 
\ngcc-5\n\n\ncompiler.path.objdump.DARWIN.OVERWRITE: 
\ngobjdump\n\ncompiler.path.objsize.DARWIN.OVERWRITE: 
\nobjsize\n\ncompiler.path.objcopy.DARWIN.OVERWRITE: 
\ngobjcopy\n\n\n\n\n\n\n\n\nNOTE:\n Both the newer gcc 6.x and Clang report a 
few warnings but they can be ignored.\n\n\n\n\nFURTHER NOTE:\n Mynewt 
developers mostly use gcc 5.x for sim builds; so it may take a little while to 
fix issues reported by the newer compiler. One option is to \ndisable 
warnings\n. To do that, remove the \n-Werror\n flag as an option for the 
compiler in the  \nmynewt-src-directory\n/repos/apache-mynewt-core
 /compiler/sim/compiler.yml\n file as shown below. \n\n\ncompiler.flags.base: 
\n\n\n    -m32 -Wall -ggdb\n\n\n\n\n\nYou may alternatively choose to \nspecify 
the precise warnings to ignore\n depending on the error thrown by the compiler. 
For example, if you see a \n[-Werror=misleading-indentation]\n error while 
building the sim image, add \n-Wno-misleading-indentation]\n as a compiler flag 
in the same line from the 
\nmynewt-src-directory\n/repos/apache-mynewt-core/compiler/sim/compiler.yml\n 
file.\n\n\ncompiler.flags.base: \n\n\n    -m32 -Wall -Werror -ggdb 
-Wno-misleading-indentation\n\n\n\n\n\nA third option is to simply \ndowngrade 
to gcc 5.x\n.\n\n\n\n\nInstall gdb\n\n\n$ brew install gdb\n...\n...\n==\n 
Summary\n\ud83c\udf7a  /usr/local/Cellar/gdb/7.10.1: XXX 
files,YYM\n\n\n\n\n\n\n\nNOTE:\n When running a program with gdb, you may need 
to sign your gdb\nexecutable.  \nThis page\n\nshows a recipe for gdb signing. 
Alternately you can skip this step and\ncontinue without the abili
 ty to debug your mynewt application on your PC.*\n\n\n\n\nSet up toolchain for 
Linux\n\n\nThe below procedure can be used to set up a Debian-based Linux 
system (e.g.,\nUbuntu).  If you are running a different Linux distribution, you 
will need to\nsubstitute invocations of \napt-get\n in the below steps with the 
package manager\nthat your distro uses.\n\n\n\n\nInstall gcc/libc that will 
produce 32-bit executables:\n\n\n$ sudo apt-get install gcc-multilib 
libc6-i386\n\n\n\n\n\n\n\nInstall gdb\n\n\n$ sudo apt-get install 
gdb\n\nReading package lists... Done\nBuilding dependency tree       \nReading 
state information... Done\nSuggested packages:\n  gdb-doc gdbserver\nThe 
following NEW packages will be installed:\n  gdb\n...\nProcessing triggers for 
man-db (2.6.7.1-1ubuntu1) ...\nSetting up gdb (7.7.1-0ubuntu5~14.04.2) 
...\n\n\n\n\n\n\n\nAt this point you have installed all the necessary software 
to build and run your first project on a simluator on your Mac OS or Linux 
computer. You may
  proceed to the \nCreate Your First Project\n section or continue to the next 
section and install the cross tools for ARM.", 
+            "title": "Install Native Toolchain"
+        }, 
+        {
+            "location": 
"/os/get_started/native_tools/#installing-native-mynewt-tools", 
+            "text": "This page shows how to install tools for native Mynewt 
targets (simulated targets on your laptop/computer) without using a Docker 
container. In other words, it allows you to run Mynewt OS as a native 
application on your Mac or Linux machine to simulate a target and use the Newt 
tool running natively on your machine to manage the simulated target. It also 
allows you to run the test suites for all packages not requiring HW support. 
You may choose to do this instead of using the build toolchain and Newt tool 
available in a Docker container.  This page provides guidance for MAC and 
Linux. See the relevant sections below.", 
+            "title": "Installing Native Mynewt Tools"
+        }, 
+        {
+            "location": 
"/os/get_started/native_tools/#set-up-toolchain-for-mac", 
+            "text": "", 
+            "title": "Set up toolchain for Mac"
+        }, 
+        {
+            "location": "/os/get_started/native_tools/#install-brew", 
+            "text": "If you have not already installed Homebrew from the  newt 
 tutorials pages , install it.", 
+            "title": "Install Brew"
+        }, 
+        {
+            "location": "/os/get_started/native_tools/#install-gcclibc", 
+            "text": "OS X ships with a C compiler called Clang.  To build 
applications for the Mynewt simulator with, a different compiler is used as 
default: gcc.  $ brew install gcc\n...\n...\n==  Summary\n\ud83c\udf7a  
/usr/local/Cellar/gcc/5.2.0: 1353 files, 248M   Check the gcc version you have 
installed (either using brew or previously installed). The brew-installed 
version can be checked using  brew list gcc . The default compiler.yml 
configuration file in Mynewt expects version 5.x for Mac users, so if the 
installed version is 6.x and you wish to continue with this newer version, 
modify the  mynewt-src-directory 
/repos/apache-mynewt-core/compiler/sim/compiler.yml  file to change the default 
 gcc-5  defined there to  gcc-6 . In other words, replace the lines shown 
highlighted below:  # OS X. compiler.path.cc.DARWIN.OVERWRITE:  gcc-5  
compiler.path.as.DARWIN.OVERWRITE:  gcc-5  
compiler.path.objdump.DARWIN.OVERWRITE:  gobjdump 
\ncompiler.path.objsize.DARWIN.OVERWRITE:  objsize 
 \ncompiler.path.objcopy.DARWIN.OVERWRITE:  gobjcopy   with the following:  
compiler.path.cc.DARWIN.OVERWRITE:  gcc-6 \ncompiler.path.as.DARWIN.OVERWRITE:  
gcc-6\u201d   In case you wish to use Clang, you can change your  
mynewt-src-directory /repos/apache-mynewt-core/compiler/sim/compiler.yml  to 
use Clang. Delete the gcc-5 DARWIN.OVERWRITE lines highlighted below.  # OS X. 
compiler.path.cc.DARWIN.OVERWRITE:  gcc-5  compiler.path.as.DARWIN.OVERWRITE:  
gcc-5  compiler.path.objdump.DARWIN.OVERWRITE:  gobjdump 
\ncompiler.path.objsize.DARWIN.OVERWRITE:  objsize 
\ncompiler.path.objcopy.DARWIN.OVERWRITE:  gobjcopy    NOTE:  Both the newer 
gcc 6.x and Clang report a few warnings but they can be ignored.   FURTHER 
NOTE:  Mynewt developers mostly use gcc 5.x for sim builds; so it may take a 
little while to fix issues reported by the newer compiler. One option is to  
disable warnings . To do that, remove the  -Werror  flag as an option for the 
compiler in the   mynewt-src-directory /repos/apa
 che-mynewt-core/compiler/sim/compiler.yml  file as shown below.   
compiler.flags.base:       -m32 -Wall -ggdb  You may alternatively choose to  
specify the precise warnings to ignore  depending on the error thrown by the 
compiler. For example, if you see a  [-Werror=misleading-indentation]  error 
while building the sim image, add  -Wno-misleading-indentation]  as a compiler 
flag in the same line from the  mynewt-src-directory 
/repos/apache-mynewt-core/compiler/sim/compiler.yml  file.  
compiler.flags.base:       -m32 -Wall -Werror -ggdb -Wno-misleading-indentation 
 A third option is to simply  downgrade to gcc 5.x .", 
+            "title": "Install gcc/libc"
+        }, 
+        {
+            "location": "/os/get_started/native_tools/#install-gdb", 
+            "text": "$ brew install gdb\n...\n...\n==  Summary\n\ud83c\udf7a  
/usr/local/Cellar/gdb/7.10.1: XXX files,YYM   NOTE:  When running a program 
with gdb, you may need to sign your gdb\nexecutable.   This page \nshows a 
recipe for gdb signing. Alternately you can skip this step and\ncontinue 
without the ability to debug your mynewt application on your PC.*", 
+            "title": "Install gdb"
+        }, 
+        {
+            "location": 
"/os/get_started/native_tools/#set-up-toolchain-for-linux", 
+            "text": "The below procedure can be used to set up a Debian-based 
Linux system (e.g.,\nUbuntu).  If you are running a different Linux 
distribution, you will need to\nsubstitute invocations of  apt-get  in the 
below steps with the package manager\nthat your distro uses.", 
+            "title": "Set up toolchain for Linux"
+        }, 
+        {
+            "location": 
"/os/get_started/native_tools/#install-gcclibc-that-will-produce-32-bit-executables",
 
+            "text": "$ sudo apt-get install gcc-multilib libc6-i386", 
+            "title": "Install gcc/libc that will produce 32-bit executables:"
+        }, 
+        {
+            "location": "/os/get_started/native_tools/#install-gdb_1", 
+            "text": "$ sudo apt-get install gdb\n\nReading package lists... 
Done\nBuilding dependency tree       \nReading state information... 
Done\nSuggested packages:\n  gdb-doc gdbserver\nThe following NEW packages will 
be installed:\n  gdb\n...\nProcessing triggers for man-db (2.6.7.1-1ubuntu1) 
...\nSetting up gdb (7.7.1-0ubuntu5~14.04.2) ...   At this point you have 
installed all the necessary software to build and run your first project on a 
simluator on your Mac OS or Linux computer. You may proceed to the  Create Your 
First Project  section or continue to the next section and install the cross 
tools for ARM.", 
+            "title": "Install gdb"
+        }, 
+        {
             "location": "/os/get_started/cross_tools/", 
             "text": "Installing Cross Tools for ARM\n\n\nThis page shows how 
to install tools on your laptop/computer to use for direct communication (e.g. 
for debugging) with some ARM based HW platforms running Apache Mynewt.  It 
shows you how to install the following tools for Mac OS X and 
Linux:\n\n\n\n\nARM Cross toolchain\n\n\nDebugger to load and debug your 
device\n\n\n\n\n\n\nInstall ARM Cross Toolchain\n\n\nInstall ARM Toolchain For 
Mac OS X\n\n\nInstall the PX4 Toolchain and check the version installed. ARM 
maintains a\npre-built GNU toolchain with a GCC source branch targeted at 
Embedded ARM\nProcessors, namely Cortex-R/Cortex-M processor families. After 
installing,\nensure that the symbolic link installed by Homebrew points to the 
correct\nversion of the debugger.\n\n\n$ brew tap PX4/homebrew-px4\n$ brew 
update\n$ brew install gcc-arm-none-eabi-49\n$ arm-none-eabi-gcc --version  
\narm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 4.9.3 20150529 
(release) [ARM/embe
 dded-4_9-branch revision 224288]\nCopyright (C) 2014 Free Software Foundation, 
Inc.\nThis is free software; see the source for copying conditions.  There is 
NO\nwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.\n$ ls -al /usr/local/bin/arm-none-eabi-gdb\nlrwxr-xr-x  1 aditihilbert 
 admin  69 Sep 22 17:16 /usr/local/bin/arm-none-eabi-gdb -\n 
/usr/local/Cellar/gcc-arm-none-eabi-49/20150609/bin/arm-none-eabi-gdb\n\n\n\n\n\nNote:\n
 If no version is specified, brew will install the latest version\navailable. 
Mynewt OS will eventually work with multiple versions available,\nincluding the 
latest releases. However, at present we have tested only with\nthis version and 
recommend it for getting started. \n\n\n\n\nInstall ARM Toolchain For 
Linux\n\n\nOn a Debian-based Linux distribution, gcc 4.9.3 for ARM can be 
installed with\napt-get as documented below. The steps are explained in depth 
at\n\nhttps://launchpad.net/~team-gcc-arm-embedded/+archive/ubuntu/ppa\n.\n\n\n$
  sudo apt-get remove binutils-arm-none-eabi gcc-arm-none-eabi \n$ sudo 
add-apt-repository ppa:team-gcc-arm-embedded/ppa\n$ sudo apt-get update \n$ 
sudo apt-get install gcc-arm-none-eabi\n$ sudo apt-get install 
gdb-arm-none-eabi\n\n\n\n\n\n\n\nInstall Debugger\n\n\nMynewt uses, depending 
on the board, either the OpenOCD or SEGGER J-Link debugger. \n\n\nInstall 
OpenOCD\n\n\nOpenOCD (Open On-Chip Debugger) is open-source software that 
allows your\ncomputer to interface with the JTAG debug connector on a variety 
of boards.  A\nJTAG connection lets you debug and test embedded target devices. 
For more on\nOpenOCD go to \nhttp://openocd.org\n.\n\n\nOpenOCD version 0.10.0 
with nrf52 support is required.  A binary for this version is available to 
download for Mac OS and Linux.\n\n\n\n\nInstall OpenOCD on Mac OS\n\n\nStep 1: 
Download the \nbinary tarball for Mac OS\n.\n\n\nStep 2: Change to the root 
directory: \n\n\n$cd / \n\n\n\n\n\n\nStep 3: Untar the tarball and install into 
\n /usr/local/
 bin\n.  You will need to replace \n ~/Downloads \n with the directory that the 
tarball is downloaded to.  \n\n\nsudo tar -xf 
~/Downloads/openocd-bin-0.10.0-MacOS.tgz ` \n\n\n\n\n\n\nStep 4: Check the 
OpenOCD version you are using: \n\n\n$which 
openocd\n/usr/local/bin/openocd\n$openocd -v\nOpen On-Chip Debugger 
0.10.0\nLicensed under GNU GPL v2\nFor bug reports, 
read\nhttp://openocd.org/doc/doxygen/bugs.html\n\n\n\n\n\nYou should see 
version: \n0.10.0\n. \n\n\n\n\nInstall OpenOCD on Linux\n\n\nStep 1: Download 
the \nbinary tarball for Linux\n\n\nStep 2: Change to the root directory: 
\n\n\n$cd / \n\n\n\n\n\n\nStep 3: Untar the tarball and install into \n 
/usr/local/bin\n.  You will need to replace \n ~/Downloads \n with the 
directory that the tarball is downloaded to.  \n\n\n Note:\n You must specify 
the -p option for the tar command.\n\n\n$sudo tar -xpf 
~/Downloads/openocd-bin-0.10.0-Linux.tgz\n\n\n\n\n\n\nStep 4: Check the OpenOCD 
version you are using: \n\n\n$which openocd\n/usr/lo
 cal/bin/openocd\n$openocd -v\nOpen On-Chip Debugger 0.10.0\nLicensed under GNU 
GPL v2\nFor bug reports, 
read\nhttp://openocd.org/doc/doxygen/bugs.html\n\n\n\n\n\nYou should see 
version: \n0.10.0\n. \n\n\nIf you see any of these error 
messages:\n\n\n\n\n\n\nopenocd: error while loading shared libraries: 
libhidapi-hidraw.so.0: cannot open shared object file: No such file or 
directory\n\n\n\n\n\n\nopenocd: error while loading shared libraries: 
libusb-1.0.so.0: cannot open shared object file: No such file or directory 
\n\n\n\n\n\n\nrun the following command to install the libraries: \n\n\n$sudo 
apt-get install libhidapi-dev:i386\n\n\n\n\n\n\n\nInstall SEGGAR 
J-Link\n\n\nYou can download and install Segger J-LINK Software and 
documentation pack from \nSEGGER\n.", 
             "title": "Install Cross Tools for ARM"
@@ -352,7 +362,7 @@
         }, 
         {
             "location": "/os/get_started/project_create/", 
-            "text": "Create Your First Mynewt Project\n\n\nThis page shows how 
to create a Mynewt Project using the \nnewt\n command-line 
tool.\n\n\n\n\nPre-Requisites\n\n\n\n\nNewt:\n\n\nIf you have taken the Docker 
route, you have already installed Newt.\n\n\nIf you have taken the native 
install route, you have to ensure that you have installed the Newt tool 
following the instructions for \nMac\n or \nLinux\n as appropriate, and that 
the \nnewt\n command is in your system path. \n\n\n\n\n\n\nYou must have 
Internet connectivity to fetch remote Mynewt components.\n\n\nYou must 
\ninstall the compiler tools\n to \nsupport native compiling to build the 
project this tutorial creates.  \n\n\n\n\n\n\nNewt New\n\n\nChoose a project 
name. For this tutorial we will call this project \nmyproj\n.\nEnter the \nnewt 
new myproj\n command. \n\n\n$ newt new myproj\nDownloading project skeleton 
from apache/incubator-mynewt-blinky...\nInstalling skeleton in 
myproj...\nProject myproj successfully crea
 ted.\n\n\n\n\n\n\n\nNewt populates this new project with a base skeleton of a 
new Apache Mynewt \nproject.  It has the following structure. \n\n\nNote\n: If 
you do not have \ntree\n, install it by running \nbrew install tree\n.\n\n\n$ 
cd myproj\n$ tree \n.\n\u251c\u2500\u2500 DISCLAIMER\n\u251c\u2500\u2500 
LICENSE\n\u251c\u2500\u2500 NOTICE\n\u251c\u2500\u2500 
README.md\n\u251c\u2500\u2500 apps\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
blinky\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 pkg.yml\n\u2502\u00a0\u00a0   
  \u2514\u2500\u2500 src\n\u2502\u00a0\u00a0         \u2514\u2500\u2500 
main.c\n\u251c\u2500\u2500 project.yml\n\u2514\u2500\u2500 targets\n    
\u251c\u2500\u2500 my_blinky_sim\n    \u2502\u00a0\u00a0 \u251c\u2500\u2500 
pkg.yml\n    \u2502\u00a0\u00a0 \u2514\u2500\u2500 target.yml\n    
\u2514\u2500\u2500 unittest\n        \u251c\u2500\u2500 pkg.yml\n        
\u2514\u2500\u2500 target.yml\n\n6 directories, 11 files\n\n\n\n\n\n\n\nThe 
Newt tool has installed the base files for a
  project comprising the following:\n\n\n\n\nThe file \nproject.yml\n contains 
the repository list that the project uses to fetch\nits packages. Your project 
is a collection of repositories.  In this case, the project just\ncomprises the 
core mynewt repository.  Later you will add more repositories\nto include other 
mynewt components.\n\n\nThe file \napps/blinky/pkg.yml\n contains the 
description of your application\nand its package dependencies.\n\n\nA 
\ntarget\n directory containing \nmy_blinky_sim\n, a target descriptor used 
to\nbuild a version of myproj.  Use \nnewt target show\n to see available build 
\ntargets.\n\n\nA non-buildable target called \nunittest\n.  This is used 
internally by \nnewt\n and is not a formal build target.\n\n\n\n\nNOTE:\n The 
actual code and package files are not installed \n(except the template for 
\nmain.c\n).  See the next step for installing the packages.\n\n\nNOTE:\n By 
default newt uses the code in the master branch. This is the latest stable\ncode
  for newt. If you need to use a different branch, you can set this in the 
project.yml\nfile. \n\n\nrepository.apache-mynewt-core:\n    type: github\n    
vers: 1-latest\n    user: apache\n    repo: 
incubator-mynewt-core\n\n\n\n\n\nChanging to 0-dev will put you on the latest 
master branch. \nThis branch may not be stable and you may encounter bugs or 
other problems.\n\n\n\n\nNewt Install\n\n\nOnce you've switched into your new 
project's directory, the next step is to fetch\nany dependencies this project 
has.  By default, all Newt projects rely on a\nsingle remote repository, 
apache-mynewt-core.  The \nnewt install\n command will\nfetch this 
repository.\n\n\n$ newt install\napache-mynewt-core\n\n\n\n\n\nNOTE:\n 
\napache-mynewt-core\n may take a while to download.  To see progress,\nuse the 
\n-v\n (verbose) option to install. \n\n\n\n\nOnce \nnewt install\n has 
successfully finished, the contents of \napache-mynewt-core\n will have been 
downloaded into your local directory.  You can vi
 ew them by issuing the following commands in the base directory of the new 
project. The actual output will depend on what is in the latest 'master' branch 
you have pulled from.\n\n\n$ tree -L 2 
repos/apache-mynewt-core/\n\nrepos/apache-mynewt-core/\n\u251c\u2500\u2500 
CODING_STANDARDS.md\n\u251c\u2500\u2500 DISCLAIMER\n\u251c\u2500\u2500 
LICENSE\n\u251c\u2500\u2500 NOTICE\n\u251c\u2500\u2500 
README.md\n\u251c\u2500\u2500 RELEASE_NOTES.md\n\u251c\u2500\u2500 
apps\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 blecent\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 blehci\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
bleprph\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 bleprph_oic\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 blesplit\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
bletest\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 bletiny\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 bleuart\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
boot\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 fat2native\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 ffs2native\n\u250
 2\u00a0\u00a0 \u251c\u2500\u2500 ocf_sample\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 slinky\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
slinky_oic\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 spitest\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 splitty\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
test\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 testbench\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 timtest\n\u251c\u2500\u2500 boot\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 boot_serial\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
bootutil\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 split\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 split_app\n\u251c\u2500\u2500 compiler\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 arm-none-eabi-m0\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
arm-none-eabi-m4\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
gdbmacros\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 mips\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 sim\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
sim-mips\n\u251c\u2500\u2500 crypto\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
mbedtls\n\u250
 2\u00a0\u00a0 \u2514\u2500\u2500 tinycrypt\n\u251c\u2500\u2500 
docs\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 doxygen.xml\n\u251c\u2500\u2500 
encoding\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 base64\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 cborattr\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
json\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 tinycbor\n\u251c\u2500\u2500 
fs\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 disk\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 fatfs\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
fcb\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 fs\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 nffs\n\u251c\u2500\u2500 hw\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 bsp\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
cmsis-core\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 drivers\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 hal\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
mcu\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 scripts\n\u251c\u2500\u2500 
kernel\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 os\n\u251c\u2500\u2500 
libc\n\u2502\u00a0\u00a0 \u2514\u2500
 \u2500 baselibc\n\u251c\u2500\u2500 mgmt\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 imgmgr\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
mgmt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 newtmgr\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 oicmgr\n\u251c\u2500\u2500 net\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 ip\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
nimble\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 oic\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 wifi\n\u251c\u2500\u2500 project.yml\n\u251c\u2500\u2500 
repository.yml\n\u251c\u2500\u2500 sys\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
config\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 console\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 coredump\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
defs\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 flash_map\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 id\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
log\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 mfg\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 reboot\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
shell\n\u2502\u00a0\u00a0 \u251c\u25
 00\u2500 stats\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
sysinit\n\u251c\u2500\u2500 targets\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
unittest\n\u251c\u2500\u2500 test\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
crash_test\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
flash_test\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 runtest\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 testutil\n\u251c\u2500\u2500 time\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 datetime\n\u2514\u2500\u2500 util\n    \u251c\u2500\u2500 
cbmem\n    \u251c\u2500\u2500 crc\n    \u2514\u2500\u2500 mem\n\n94 
directories, 9 files\n\n\n\n\n\nAs you can see, the core of the Apache Mynewt 
operating system has been brought \ninto your local directory. \n\n\n\n\nTest 
the project's packages\n\n\nYou have already built your first basic project. 
You can ask Newt to execute the unit tests in a package. For example, to test 
the \nsys/config\n package in the \napache-mynewt-core\n repo, call newt as 
shown below.\n\n\n$ newt test @apache-mynewt-core/sys/config\n
 Testing package @apache-mynewt-core/sys/config/test-fcb\nCompiling 
bootutil_misc.c\nCompiling image_ec.c\nCompiling image_rsa.c\nCompiling 
image_validate.c\n\n    ...\n\nLinking 
~/dev/myproj/bin/targets/unittest/sys_config_test-fcb/app/sys/config/test-fcb/sys_config_test-fcb.elf\nExecuting
 test: 
~/dev/myproj/bin/targets/unittest/sys_config_test-fcb/app/sys/config/test-fcb/sys_config_test-fcb.elf\nTesting
 package @apache-mynewt-core/sys/config/test-nffs\nCompiling 
repos/apache-mynewt-core/encoding/base64/src/hex.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_cli.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_dirent.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_mkdir.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_mount.c\nCompiling 
repos/apache-mynewt-core/encoding/base64/src/base64.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_file.c\nCompiling 
repos/apache-mynewt-core/fs/disk/src/disk.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_nmgr.c\nCompiling repos/ap
 ache-mynewt-core/fs/fs/src/fsutil.c\nCompiling 
repos/apache-mynewt-core/fs/nffs/src/nffs.c\n\n     ...\n\nLinking 
~/dev/myproj/bin/targets/unittest/sys_config_test-nffs/app/sys/config/test-nffs/sys_config_test-nffs.elf\nExecuting
 test: 
~/dev/myproj/bin/targets/unittest/sys_config_test-nffs/app/sys/config/test-nffs/sys_config_test-nffs.elf\nPassed
 tests: [sys/config/test-fcb sys/config/test-nffs]\nAll tests 
passed\n\n\n\n\n\nNOTE:\n If you've installed the latest gcc using homebrew on 
your Mac, you will likely be running gcc-6. Make sure you have adjusted the 
compiler.yml configuration to reflect that as noted in \nNative Install 
Option\n. You can choose to downgrade to gcc-5 in order to use the default gcc 
compiler configuration for MyNewt.\n\n\nNOTE:\n If you are running the standard 
gcc for 64-bit machines, it does not support 32-bit. In that case you will see 
compilation errors. You need to install multiboot gcc (e.g. gcc-multilib if you 
running on a 64-bit Ubuntu).\n\n\n$ brew u
 ninstall gcc-6\n$ brew link gcc-5\n\n\n\n\n\n\n\nTo test all the packages in a 
project, specify \nall\n instead of the package name.\n\n\n$ newt test 
all\nTesting package @apache-mynewt-core/boot/boot_serial/test\nCompiling 
repos/apache-mynewt-core/boot/boot_serial/test/src/boot_test.c\nCompiling 
repos/apache-mynewt-core/boot/boot_serial/test/src/testcases/boot_serial_setup.c\n\n
     ...\n\nLinking 
~/dev/myproj/bin/targets/unittest/boot_boot_serial_test/app/boot/boot_serial/test/boot_boot_serial_test.elf\n\n...lots
 of compiling and testing...\n\nLinking 
~/dev/myproj/bin/targets/unittest/util_cbmem_test/app/util/cbmem/test/util_cbmem_test.elf\nExecuting
 test: 
~/dev/myproj/bin/targets/unittest/util_cbmem_test/app/util/cbmem/test/util_cbmem_test.elf\nPassed
 tests: [boot/boot_serial/test boot/bootutil/test crypto/mbedtls/test 
encoding/base64/test encoding/cborattr/test encoding/json/test fs/fcb/test 
fs/nffs/test kernel/os/test net/ip/mn_socket/test net/nimble/host/test 
net/oic/test sys/
 config/test-fcb sys/config/test-nffs sys/flash_map/test sys/log/full/test 
util/cbmem/test]\nAll tests passed\n\n\n\n\n\n\n\nBuild the Project\n\n\nTo 
build and run your new application, simply issue the following command:\n\n\n$ 
newt build my_blinky_sim \nBuilding target targets/my_blinky_sim\nCompiling 
repos/apache-mynewt-core/hw/hal/src/hal_common.c\nCompiling 
repos/apache-mynewt-core/hw/drivers/uart/src/uart.c\nCompiling 
repos/apache-mynewt-core/hw/hal/src/hal_flash.c\nCompiling 
repos/apache-mynewt-core/hw/bsp/native/src/hal_bsp.c\nCompiling 
repos/apache-mynewt-core/hw/drivers/uart/uart_hal/src/uart_hal.c\nCompiling 
apps/blinky/src/main.c\n\n    ...\n\n\nArchiving sys_mfg.a\nArchiving 
sys_sysinit.a\nArchiving util_mem.a\nLinking 
~/dev/myproj/bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf\nTarget 
successfully built: targets/my_blinky_sim\n\n\n\n\n\n\n\nRun the 
Project\n\n\nYou can run the simulated version of your project and see the 
simulated LED\nblink. If you are using ne
 wt docker, use \nnewt run\n to run the simulated binary.\n\n\n$ newt run 
my_blinky_sim\nLoading app image into slot 1\n    ...\nDebugging 
~/dev/myproj/bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf\n    
...\nReading symbols from 
/bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf...done.\n(gdb)\n\n\n\n\n\nType
 \nr\n at the \n(gdb)\n prompt to run the project. You will see an output 
indicating that the hal_gpio pin is toggling between 1 and 0 in a simulated 
blink.\n\n\nIf you natively install the toolchain, you can either use \nnewt 
run\n or call the binary directly. Generally, \nnewt run\n is the expected way 
to call things.\n\n\n$ 
./bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf\nhal_gpio set pin  1 to 
0\n\n\n\n\n\n\n\nComplete\n\n\nCongratulations, you have created your first 
project!  The blinky application\nis not terribly exciting when it is run in 
the simulator, as there is no LED to\nblink.  Apache Mynewt has a lot more 
functionality than just running simulated\
 napplications.  It provides all the features you'll need to cross-compile 
your\napplication, run it on real hardware and develop a full featured 
application.\n\n\nIf you're interested in learning more, a good next step is to 
dig in to one of\nthe \ntutorials\n and get a Mynewt project running on real 
hardware.\n\n\nHappy Hacking!", 
+            "text": "Create Your First Mynewt Project\n\n\nThis page shows how 
to create a Mynewt Project using the \nnewt\n command-line 
tool.\n\n\n\n\nPrerequisites\n\n\n\n\nHave Internet connectivity to fetch 
remote Mynewt components.\n\n\nInstall Newt:\n\n\nIf you have taken the native 
install route,  see the installation instructions for \nMac OS\n or for 
\nLinux\n. \n\n\nIf you have taken the Docker route, you have already installed 
Newt.\n\n\n\n\n\n\nInstall the \nnative toolchain\n to compile and build a 
Mynewt native application. \n\n\n\n\n\n\nNewt New\n\n\nChoose a project name. 
For this tutorial we will call this project \nmyproj\n.\nEnter the \nnewt new 
myproj\n command. \n\n\n$ newt new myproj\nDownloading project skeleton from 
apache/incubator-mynewt-blinky...\nInstalling skeleton in myproj...\nProject 
myproj successfully created.\n\n\n\n\n\n\n\nNewt populates this new project 
with a base skeleton of a new Apache Mynewt \nproject.  It has the following 
structure. \n\n\
 nNote\n: If you do not have \ntree\n, run \nbrew install tree\n to install on 
Mac OS or run \nsudo apt-get install tree\n to install on Linux.\n\n\n$ cd 
myproj\n$ tree \n.\n\u251c\u2500\u2500 DISCLAIMER\n\u251c\u2500\u2500 
LICENSE\n\u251c\u2500\u2500 NOTICE\n\u251c\u2500\u2500 
README.md\n\u251c\u2500\u2500 apps\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
blinky\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 pkg.yml\n\u2502\u00a0\u00a0   
  \u2514\u2500\u2500 src\n\u2502\u00a0\u00a0         \u2514\u2500\u2500 
main.c\n\u251c\u2500\u2500 project.yml\n\u2514\u2500\u2500 targets\n    
\u251c\u2500\u2500 my_blinky_sim\n    \u2502\u00a0\u00a0 \u251c\u2500\u2500 
pkg.yml\n    \u2502\u00a0\u00a0 \u2514\u2500\u2500 target.yml\n    
\u2514\u2500\u2500 unittest\n        \u251c\u2500\u2500 pkg.yml\n        
\u2514\u2500\u2500 target.yml\n\n6 directories, 11 files\n\n\n\n\n\n\n\nThe 
Newt tool has installed the base files for a project comprising the 
following:\n\n\n\n\nThe file \nproject.yml\n contains the rep
 ository list that the project uses to fetch\nits packages. Your project is a 
collection of repositories.  In this case, the project just\ncomprises the core 
mynewt repository.  Later you will add more repositories\nto include other 
mynewt components.\n\n\nThe file \napps/blinky/pkg.yml\n contains the 
description of your application\nand its package dependencies.\n\n\nA 
\ntarget\n directory containing \nmy_blinky_sim\n, a target descriptor used 
to\nbuild a version of myproj.  Use \nnewt target show\n to see available build 
\ntargets.\n\n\nA non-buildable target called \nunittest\n.  This is used 
internally by \nnewt\n and is not a formal build target.\n\n\n\n\nNOTE:\n The 
actual code and package files are not installed \n(except the template for 
\nmain.c\n).  See the next step for installing the packages.\n\n\nNOTE:\n By 
default newt uses the code in the master branch. This is the latest 
stable\ncode for newt. If you need to use a different branch, you can set this 
in the project.yml
 \nfile. \n\n\nrepository.apache-mynewt-core:\n    type: github\n    vers: 
1-latest\n    user: apache\n    repo: incubator-mynewt-core\n\n\n\n\n\nChanging 
to 0-dev will put you on the latest master branch. \nThis branch may not be 
stable and you may encounter bugs or other problems.\n\n\n\n\nNewt 
Install\n\n\nOnce you've switched into your new project's directory, the next 
step is to fetch\nany dependencies this project has.  By default, all Newt 
projects rely on a\nsingle remote repository, apache-mynewt-core.  The \nnewt 
install\n command will\nfetch this repository.\n\n\n$ newt 
install\napache-mynewt-core\n\n\n\n\n\nNOTE:\n \napache-mynewt-core\n may take 
a while to download.  To see progress,\nuse the \n-v\n (verbose) option to 
install. \n\n\n\n\nOnce \nnewt install\n has successfully finished, the 
contents of \napache-mynewt-core\n will have been downloaded into your local 
directory.  You can view them by issuing the following commands in the base 
directory of the new project. T
 he actual output will depend on what is in the latest 'master' branch you have 
pulled from.\n\n\n$ tree -L 2 
repos/apache-mynewt-core/\n\nrepos/apache-mynewt-core/\n\u251c\u2500\u2500 
CODING_STANDARDS.md\n\u251c\u2500\u2500 DISCLAIMER\n\u251c\u2500\u2500 
LICENSE\n\u251c\u2500\u2500 NOTICE\n\u251c\u2500\u2500 
README.md\n\u251c\u2500\u2500 RELEASE_NOTES.md\n\u251c\u2500\u2500 
apps\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 blecent\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 blehci\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
bleprph\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 bleprph_oic\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 blesplit\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
bletest\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 bletiny\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 bleuart\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
boot\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 fat2native\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 ffs2native\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
ocf_sample\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sl
 inky\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 slinky_oic\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 spitest\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
splitty\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 test\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 testbench\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
timtest\n\u251c\u2500\u2500 boot\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
boot_serial\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 bootutil\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 split\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
split_app\n\u251c\u2500\u2500 compiler\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
arm-none-eabi-m0\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
arm-none-eabi-m4\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
gdbmacros\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 mips\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 sim\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
sim-mips\n\u251c\u2500\u2500 crypto\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
mbedtls\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 tinycrypt\n\u251c\u2500\u2500 
docs\n\u2502\u00a0\u00
 a0 \u2514\u2500\u2500 doxygen.xml\n\u251c\u2500\u2500 
encoding\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 base64\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 cborattr\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
json\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 tinycbor\n\u251c\u2500\u2500 
fs\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 disk\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 fatfs\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
fcb\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 fs\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 nffs\n\u251c\u2500\u2500 hw\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 bsp\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
cmsis-core\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 drivers\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 hal\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
mcu\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 scripts\n\u251c\u2500\u2500 
kernel\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 os\n\u251c\u2500\u2500 
libc\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 baselibc\n\u251c\u2500\u2500 
mgmt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 imgmg
 r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 mgmt\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 newtmgr\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
oicmgr\n\u251c\u2500\u2500 net\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
ip\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 nimble\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 oic\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 
wifi\n\u251c\u2500\u2500 project.yml\n\u251c\u2500\u2500 
repository.yml\n\u251c\u2500\u2500 sys\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
config\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 console\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 coredump\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
defs\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 flash_map\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 id\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
log\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 mfg\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 reboot\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
shell\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 stats\n\u2502\u00a0\u00a0 
\u2514\u2500\u2500 sysinit\n\u251c\u2500\u2500 tar
 gets\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 unittest\n\u251c\u2500\u2500 
test\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 crash_test\n\u2502\u00a0\u00a0 
\u251c\u2500\u2500 flash_test\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 
runtest\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 testutil\n\u251c\u2500\u2500 
time\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 datetime\n\u2514\u2500\u2500 util\n 
   \u251c\u2500\u2500 cbmem\n    \u251c\u2500\u2500 crc\n    \u2514\u2500\u2500 
mem\n\n94 directories, 9 files\n\n\n\n\n\nAs you can see, the core of the 
Apache Mynewt operating system has been brought \ninto your local directory. 
\n\n\n\n\nTest the project's packages\n\n\nYou have already built your first 
basic project. You can ask Newt to execute the unit tests in a package. For 
example, to test the \nsys/config\n package in the \napache-mynewt-core\n repo, 
call newt as shown below.\n\n\n$ newt test 
@apache-mynewt-core/sys/config\nTesting package 
@apache-mynewt-core/sys/config/test-fcb\nCompiling bootutil_misc.c\nC
 ompiling image_ec.c\nCompiling image_rsa.c\nCompiling image_validate.c\n\n    
...\n\nLinking 
~/dev/myproj/bin/targets/unittest/sys_config_test-fcb/app/sys/config/test-fcb/sys_config_test-fcb.elf\nExecuting
 test: 
~/dev/myproj/bin/targets/unittest/sys_config_test-fcb/app/sys/config/test-fcb/sys_config_test-fcb.elf\nTesting
 package @apache-mynewt-core/sys/config/test-nffs\nCompiling 
repos/apache-mynewt-core/encoding/base64/src/hex.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_cli.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_dirent.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_mkdir.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_mount.c\nCompiling 
repos/apache-mynewt-core/encoding/base64/src/base64.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_file.c\nCompiling 
repos/apache-mynewt-core/fs/disk/src/disk.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fs_nmgr.c\nCompiling 
repos/apache-mynewt-core/fs/fs/src/fsutil.c\nCompiling 
repos/apache-mynewt-core/fs/nffs/src/n
 ffs.c\n\n     ...\n\nLinking 
~/dev/myproj/bin/targets/unittest/sys_config_test-nffs/app/sys/config/test-nffs/sys_config_test-nffs.elf\nExecuting
 test: 
~/dev/myproj/bin/targets/unittest/sys_config_test-nffs/app/sys/config/test-nffs/sys_config_test-nffs.elf\nPassed
 tests: [sys/config/test-fcb sys/config/test-nffs]\nAll tests 
passed\n\n\n\n\n\nNOTE:\n If you've installed the latest gcc using homebrew on 
your Mac, you will likely be running gcc-6. Make sure you have adjusted the 
compiler.yml configuration to reflect that as noted in \nNative Install 
Option\n. You can choose to downgrade to gcc-5 in order to use the default gcc 
compiler configuration for MyNewt.\n\n\nNOTE:\n If you are running the standard 
gcc for 64-bit machines, it does not support 32-bit. In that case you will see 
compilation errors. You need to install multiboot gcc (e.g. gcc-multilib if you 
running on a 64-bit Ubuntu).\n\n\n$ brew uninstall gcc-6\n$ brew link 
gcc-5\n\n\n\n\n\n\n\nTo test all the packages in a projec
 t, specify \nall\n instead of the package name.\n\n\n$ newt test all\nTesting 
package @apache-mynewt-core/boot/boot_serial/test\nCompiling 
repos/apache-mynewt-core/boot/boot_serial/test/src/boot_test.c\nCompiling 
repos/apache-mynewt-core/boot/boot_serial/test/src/testcases/boot_serial_setup.c\n\n
     ...\n\nLinking 
~/dev/myproj/bin/targets/unittest/boot_boot_serial_test/app/boot/boot_serial/test/boot_boot_serial_test.elf\n\n...lots
 of compiling and testing...\n\nLinking 
~/dev/myproj/bin/targets/unittest/util_cbmem_test/app/util/cbmem/test/util_cbmem_test.elf\nExecuting
 test: 
~/dev/myproj/bin/targets/unittest/util_cbmem_test/app/util/cbmem/test/util_cbmem_test.elf\nPassed
 tests: [boot/boot_serial/test boot/bootutil/test crypto/mbedtls/test 
encoding/base64/test encoding/cborattr/test encoding/json/test fs/fcb/test 
fs/nffs/test kernel/os/test net/ip/mn_socket/test net/nimble/host/test 
net/oic/test sys/config/test-fcb sys/config/test-nffs sys/flash_map/test 
sys/log/full/test util/cbmem/
 test]\nAll tests passed\n\n\n\n\n\n\n\nBuild the Project\n\n\nTo build and run 
your new application, simply issue the following command:\n\n\n$ newt build 
my_blinky_sim \nBuilding target targets/my_blinky_sim\nCompiling 
repos/apache-mynewt-core/hw/hal/src/hal_common.c\nCompiling 
repos/apache-mynewt-core/hw/drivers/uart/src/uart.c\nCompiling 
repos/apache-mynewt-core/hw/hal/src/hal_flash.c\nCompiling 
repos/apache-mynewt-core/hw/bsp/native/src/hal_bsp.c\nCompiling 
repos/apache-mynewt-core/hw/drivers/uart/uart_hal/src/uart_hal.c\nCompiling 
apps/blinky/src/main.c\n\n    ...\n\n\nArchiving sys_mfg.a\nArchiving 
sys_sysinit.a\nArchiving util_mem.a\nLinking 
~/dev/myproj/bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf\nTarget 
successfully built: targets/my_blinky_sim\n\n\n\n\n\n\n\nRun the 
Project\n\n\nYou can run the simulated version of your project and see the 
simulated LED\nblink. If you are using newt docker, use \nnewt run\n to run the 
simulated binary.\n\n\n$ newt run my_blinky_si
 m\nLoading app image into slot 1\n    ...\nDebugging 
~/dev/myproj/bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf\n    
...\nReading symbols from 
/bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf...done.\n(gdb)\n\n\n\n\n\nType
 \nr\n at the \n(gdb)\n prompt to run the project. You will see an output 
indicating that the hal_gpio pin is toggling between 1 and 0 in a simulated 
blink.\n\n\nIf you natively install the toolchain, you can either use \nnewt 
run\n or call the binary directly. Generally, \nnewt run\n is the expected way 
to call things.\n\n\n$ 
./bin/targets/my_blinky_sim/app/apps/blinky/blinky.elf\nhal_gpio set pin  1 to 
0\n\n\n\n\n\n\n\nComplete\n\n\nCongratulations, you have created your first 
project!  The blinky application\nis not terribly exciting when it is run in 
the simulator, as there is no LED to\nblink.  Apache Mynewt has a lot more 
functionality than just running simulated\napplications.  It provides all the 
features you'll need to cross-compile your\nappli
 cation, run it on real hardware and develop a full featured 
application.\n\n\nIf you're interested in learning more, a good next step is to 
dig in to one of\nthe \ntutorials\n and get a Mynewt project running on real 
hardware.\n\n\nHappy Hacking!", 
             "title": "Create Your First Project"
         }, 
         {
@@ -361,13 +371,13 @@
             "title": "Create Your First Mynewt Project"
         }, 
         {
-            "location": "/os/get_started/project_create/#pre-requisites", 
-            "text": "Newt:  If you have taken the Docker route, you have 
already installed Newt.  If you have taken the native install route, you have 
to ensure that you have installed the Newt tool following the instructions for  
Mac  or  Linux  as appropriate, and that the  newt  command is in your system 
path.     You must have Internet connectivity to fetch remote Mynewt 
components.  You must  install the compiler tools  to \nsupport native 
compiling to build the project this tutorial creates.", 
-            "title": "Pre-Requisites"
+            "location": "/os/get_started/project_create/#prerequisites", 
+            "text": "Have Internet connectivity to fetch remote Mynewt 
components.  Install Newt:  If you have taken the native install route,  see 
the installation instructions for  Mac OS  or for  Linux .   If you have taken 
the Docker route, you have already installed Newt.    Install the  nativ

<TRUNCATED>

Reply via email to