开发流程

  前提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-开发流程的更多相关文章

  1. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

  2. 小谈Scrum敏捷开发流程

    一晃眼,有两年没有写博客了,回顾前两年,各种奔波,各种忙碌,也有不少的收获.从今天开始,我要把这些收获都分享在这里. 其实这两年,对我影响最大的是开发流程.总所周知,一个好的开发流程,对于项目的进行, ...

  3. 我理解的Sitecore开发流程

    Sitecore是一个强大的支持快速开发CMS建站的平台,进入sitecore后台可以看到 它主要有3个元素: 1.Templates模板 Data template:类似于面向对象编程中的类或结构体 ...

  4. C++的性能C#的产能?! - .Net Native 系列《二》:.NET Native开发流程详解

    之前一文<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥> 获得很多朋友支持和鼓励,也更让我坚定做这项技术的推广者,希望能让更多的朋友了解这项技术,于是先从官方 ...

  5. git开发流程、常用命令及工具、TortoiseGit使用及常见问题

    根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...

  6. 软件开发流程 Software development process

    软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法.软件的总体结构设计和模块设计.编程和调试.程序联调和测试以 ...

  7. Web开发流程

    知乎上关于Web开发流程豪情给予的回答 web前端开发流程是什么?进行操作会用到哪些便捷的小工具?是先用模板做好,然后在基础上改吗??正常大家说的改框架是不是指的用模板做的网站原文件?前端开发做的文件 ...

  8. 基于Lattice_CPLD/FPGA Diamond 开发流程

         本文主要介绍了Lattice CPLD/FPGA集成开发环境的使用方法,并通过点亮开发板(Mach XO2 Breakout Board)上位号为D2的LED这一实例来演示其开发流程. 1. ...

  9. iOS开发流程总结

    本文由社区会员umyueyue分享 以下是会员umyueue总结的iOS开发流程以及学习中的资料分享. 流程:注册.开发.真机测试.发布以及上线. iPhone iOS 4从注册到app上线开发流程 ...

  10. Java程序员的日常——SpringMVC+Mybatis开发流程、推荐系统

    今天大部分时间都在写业务代码,然后算是从无到有的配置了下spring与mybatis的集成. SpringMVC+Mybatis Web开发流程 配置数据源 在applicationContext.x ...

随机推荐

  1. javascript的执行顺序

    先看下面两段js程序,先是定义式函数写法: 复制代码 <script type="text/javascript"> function myfunc(){ alert( ...

  2. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(41)-组织架构

    原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(41)-组织架构 本节开始我们要实现工作流,此工作流可以和之前的所有章节脱离关系,也可以紧密合并. 我们当 ...

  3. HTML5事件——contextmenu 隐藏鼠标右键菜单

    在window中单击右键或在Mac中Ctrl+单击时会触发contextmenu事件,通过取消其默认动作能够提供自己定义菜单. 首先先写一个自己的菜单: <style> ul, li { ...

  4. SQL Server 2012 sa 用户登录 18456 错误

    近期想研究下SQL SERVER2012 Enterprise版本号的数据库,听说功能非常强大. 我是在win7上安装的,安装的过程非常顺利,我在用"Windows 身份验证"时, ...

  5. SA密钥长度、明文长度和密文长度

    本文介绍RSA加解密中必须考虑到的密钥长度.明文长度和密文长度问题,对第一次接触RSA的开发人员来说,RSA算是比较复杂的算法,RSA的复杂度是因为数学家把效率和安全也考虑进去的缘故. 本文先只谈密钥 ...

  6. 使用 Xcode 和 Android Studio 管理 iOS 和 Android 项目版本

    在移动应用开发和运营的过程中,版本管理是一个老生常谈的基础问题,一些版本的基本概念也常常会困扰我们的研发和运营人员.同时,手动管理软件版本,也常常会因为不小心导致后续的发布和更新问题. 这里,我准备了 ...

  7. ASP.NET 微信支付

    一.在支付前期,我们需要获取用户的OpenId,此块内容只针对于JSAPI(微信中直接支付)才需要,如果生成二维码(NATIVE)扫描支付,请跳过此步骤 思路大致是:获取用户的code值 > 根 ...

  8. git语言

    安装完成后,需要进一步设置用户名和email.因为git是分布式版本控制工具,因此需要每台开发机自报家门. $ git config --global user.name "Your Nam ...

  9. BFC与IFC

    在我们做的网页上通常最重要的其中一点就是美观度,bfc他是一个块级格式化上下文,它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level Box如何布局, ...

  10. 谁是谁的first-child

    看过CSS伪类选择器之后,心想也就如此嘛,:first-child选择元素的第一个子元素,有什么难的,可一到实践中,还是到处碰壁啊. <body> <ul class="f ...