Install the dependuncies using yaourt
:
$ yaourt -S ninja ccache cmake gperf doxygen dfu-util dtc autoconf automake libtool
Clone the zephyr repo and install requirements.
$ cd ~
$ git clone https://github.com/zephyrproject-rtos/zephyr.git
$ cd zephyr/
$ pip3 install --user -r scripts/requirements.txt
$ cd ..
download the zephyr sdk.
$ wget https://github.com/zephyrproject-rtos/meta-zephyr-sdk/releases/download/0.9.3/zephyr-sdk-0.9.3-setup.run
After downloading the zephyr sdk installer, run the setup and install the sdk in ~/.zephyr
$ sudo zephyr-sdk-0.9.3-setup.run
This will ask for the path of directory to install zephyr sdk.
Create ~/.zephyrrc
and put following data into it.
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
export ZEPHYR_SDK_INSTALL_DIR=~/.zephyr/
to use these environment variables,
$ source .zephyrrc
To start zephyr development, go to the zephyr repo that you have just cloned and run zephyr-env.sh
$ cd ~/zephyr
$ source zephyr-env.sh
Once this is done, you can now start building zephyr projects.
To build the hello_world
for x86_qemu
.
$ cd samples/hello_world
$ mkdir build && cd build
$ cmake -GNinja -DBOARD=qemu_x86 ..
$ ninja
Now run this using,
$ ninja run
[0/1] To exit from QEMU enter: 'CTRL+a, x'[QEMU] CPU: qemu32,+nx,+pae
qemu-system-i386: warning: Unknown firmware file in legacy mode: genroms/multiboot.bin
***** Booting Zephyr OS zephyr-v1.13.0-954-gd696a56cf *****
Hello World! qemu_x86
To exit from qemu
hit ctrl+a
and then x
.