Zephyr-开发流程
开发流程
前提1:检查你的Linux主机满足入门指南中规定的最低要求。
具体请参考 : 物联网操作系统-Zephyr
前提2: 确保SDK的环境变量和zephyr项目的环境变量。
终端执行: $ export ,将显示SDK环境变量
项目目录下执行:
$ source zephyr-env.sh
步骤1:构建开发项目的自定义目录结构
user@instant-contiki:~$ mkdir application_feelf 在 application_feelf目录下执行 mkdir src
application_feelf $ mkdir src
步骤2:application_feelf目录下增加Makefile (构建项目的Makefile)
application_feelf $ touch Makefile
编辑Makefile (此为个人例子,请选择填写)
#Add the kernel type on a new line (= 两边必须有空格) KERNEL_TYPE = micro #Add the name of the board configuration for your application on a new line BOARD ?= qemu_cortex_m3 #Add the name of the default kernel configuration file for your application on a new line CONF_FILE = prj.conf #For microkernel applications, add the name of the MDEF for your application MDEF_FILE = prj.mdef #Include the mandatory Makefile fragments on a new line include /home/user/zephyr-/zephyr-v1.5.0/Makefile.inc
步骤3:定义应用程序的默认内核配置。
在application_feelf目录下增加 prj.conf
application_feelf $ touch prj.conf 编译 prj.conf
# Change the number of IRQs supported by the application (=两边必须没有空格) CONFIG_NUM_IRQS=43
步骤4:定义应用程序的自定义内核配置
在 application_feelf 下执行 make menuconfig ,将出现图形配置界面。
步骤5:创建和配置MDEF一个微内核的应用
在application_feelf目录下增加
application_feelf $ touch prj.mdef
步骤6:对于所有的应用程序,你需要代码中定义微内核对象。
步骤7:开发源代码和源代码文件添加到src目录。
步骤8:建立应用程序
在application_feelf目录下执行 make application_feelf $ make 如果构建失败,请执行make clean , make pristine
application_feelf $ make clean
application_feelf $ make pristine 之后重新 make menuconfig , make BOARD=qemu_cortex_m3 ARCH=arm qemu
application_feelf $ make menuconfig
application_feelf $ make BOARD=qemu_cortex_m3 ARCH=arm qemu
步骤9:运行应用程序
在application_feelf目录下执行 make qemu
application_feelf $ make qemu
Press Ctrl + A, X
to stop the application from running in QEMU.
Zephyr-开发流程的更多相关文章
- Linux下服务器端开发流程及相关工具介绍(C++)
去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...
- 小谈Scrum敏捷开发流程
一晃眼,有两年没有写博客了,回顾前两年,各种奔波,各种忙碌,也有不少的收获.从今天开始,我要把这些收获都分享在这里. 其实这两年,对我影响最大的是开发流程.总所周知,一个好的开发流程,对于项目的进行, ...
- 我理解的Sitecore开发流程
Sitecore是一个强大的支持快速开发CMS建站的平台,进入sitecore后台可以看到 它主要有3个元素: 1.Templates模板 Data template:类似于面向对象编程中的类或结构体 ...
- C++的性能C#的产能?! - .Net Native 系列《二》:.NET Native开发流程详解
之前一文<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥> 获得很多朋友支持和鼓励,也更让我坚定做这项技术的推广者,希望能让更多的朋友了解这项技术,于是先从官方 ...
- git开发流程、常用命令及工具、TortoiseGit使用及常见问题
根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...
- 软件开发流程 Software development process
软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法.软件的总体结构设计和模块设计.编程和调试.程序联调和测试以 ...
- Web开发流程
知乎上关于Web开发流程豪情给予的回答 web前端开发流程是什么?进行操作会用到哪些便捷的小工具?是先用模板做好,然后在基础上改吗??正常大家说的改框架是不是指的用模板做的网站原文件?前端开发做的文件 ...
- 基于Lattice_CPLD/FPGA Diamond 开发流程
本文主要介绍了Lattice CPLD/FPGA集成开发环境的使用方法,并通过点亮开发板(Mach XO2 Breakout Board)上位号为D2的LED这一实例来演示其开发流程. 1. ...
- iOS开发流程总结
本文由社区会员umyueyue分享 以下是会员umyueue总结的iOS开发流程以及学习中的资料分享. 流程:注册.开发.真机测试.发布以及上线. iPhone iOS 4从注册到app上线开发流程 ...
- Java程序员的日常——SpringMVC+Mybatis开发流程、推荐系统
今天大部分时间都在写业务代码,然后算是从无到有的配置了下spring与mybatis的集成. SpringMVC+Mybatis Web开发流程 配置数据源 在applicationContext.x ...
随机推荐
- 使用PDO连接数据库 查询和插入乱码的解决方法
问题:PDO连接数据库后,查询和插入中文到数据库,出现乱码,如图: 解决方法: 法1: try{ $opts_values = array(PDO::MYSQL_ATTR_INIT_COMMAND=& ...
- 设置imageView正方形高宽
private void initWidth() { int screenWidth = ((MyApplication)getApplication()).screenWidth; if(0 == ...
- The Six Types of Rails Association
翻译整理自:http://guides.rubyonrails.org/v3.2.13/association_basics.html 想吐槽一句,http://guides.ruby-china.o ...
- ColorComboBox
using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; u ...
- java Map实现的cache manager
一个模仿memcached的JAVA虚拟缓存工具,可以缓存java对象 import java.io.ByteArrayInputStream; import java.io.ByteArrayOut ...
- [转] nginx 开启gzip压缩--字符串压缩比率很牛叉
http://www.cnblogs.com/dasn/articles/3716055.html 刚刚给博客加了一个500px相册插件,lightbox引入了很多js文件和css文件,页面一下子看起 ...
- Java基础知识强化之集合框架笔记37:用户登录注册案例
1. 登录注册案例分析图解: 2. 用户登录案例 详细分析 和 分包实现: (1)用户登录案例详细分析(面向对象思想) 按照如下的操作,可以让我们更符合面向对象思想: • 有哪些类呢? ...
- 10.30 afternoon
P76竞赛时间: ????年??月??日??:??-??:?? 题目名称 他 她 它 名称 he she it 输入 he.in she.in it.in 输出 he.out she.out it.o ...
- web 页面传值方法
一. 使用QueryString变量 QueryString是一种非常简单也是使用比较多的一种传值方式,但是它将传递的值显示在浏览器的地址栏中,如果是传递一个或多个安全性要求不高或是结构简单的数 ...
- @ManyToMany中间表附加字段设计
在使用@ManyToMany时,若中间表只有相应的外键字段可以直接建立两个对应的Entity 设置ManyToMany @ManyToMany 两个表多对多关联 但若是中间表有自己的附加字段,这需要为 ...