nuttx linux 编译,Linux下编译nuttx模拟系统

********************************************

编译Linux系统下的可执行NUTTX系统:

********************************************

1.给Linux系统安装gcc编译器;

2.将nuttx和app目录放到同一个子目录下面;

3.从nuttx/configs/sim/* 复制到nuttx目录下面;

4.如果系统是64位则不需要修改配置文件,否则则需要修改defconfig中的部分配置:

注释下面配置:

# CONFIG_HOST_X86_64 = y

使能下面配置:

CONFIG_HOST_X86=y

5:将defconfig文件名称变为 .configs/sim/*

6:在nuttx目录下面,运行make

7:通过./nuttx运行生成的目标程序

8:在nsh里面,输入poweroff来退出模拟程序;

9:默认情况下,应用程序所在分区是没有被挂载的,所以需要手动挂载一下:

mount -t binfs /bin

********************************************

示例程序的添加:

********************************************

如果想要打开更多的example程序,则需要修改defconfig文件;里面有很多CONFIG_EXAMPLES_***,

这些都与app/example下的示例相对应;

********************************************

自定义示例程序的添加(以名称为:mytest为例)

********************************************

1.在app/examples目录下面建立自已的程序的目录

2.目录下面至少有4个文件:

mytest_main.c ----主函数入口所在源文件;

Kconfig -------内核配置接口文件;

Make.defs -----将程序接入到系统的配置文件;

Makefile ------如果编译该程序的配置文件;

3.Kconfig文件如下:

config EXAMPLES_MYTEST

bool "\"Mytest!\" example"

default n

---help---

Enable the \"Mytest!\" example

if EXAMPLES_MYTEST

config EXAMPLES_MYTEST_PROGNAME

string "Program name"

default "mytest"

depends on BUILD_KERNEL

---help---

This is the name of the program that will be use when the NSH ELF

program is installed.

endif

4.Make.defs内容如下:

ifeq ($(CONFIG_EXAMPLES_MYTEST),y)

CONFIGURED_APPS += examples/mytest

endif

5.Makefile内容如下:

-include $(TOPDIR)/Make.defs

# Mytest! built-in application info

APPNAME = mytest

PRIORITY = SCHED_PRIORITY_DEFAULT

STACKSIZE = 1048

# mytest, World! Example

ASRCS =

CSRCS =

MAINSRC = mytest_main.c

CONFIG_EXAMPLES_MYTEST_PROGNAME ?= mytest$(EXEEXT)

PROGNAME = $(CONFIG_EXAMPLES_MYTEST_PROGNAME)

include $(APPDIR)/Application.mk

6:修改apps/examples目录下的Kconfig文件

添加一行:

source "$APPSDIR/examples/mytest/Kconfig"

以告诉内核来这里加载Kconfig文件;

7:在nuttx目录下的.config文件加入:

CONFIG_EXAMPLES_MYTEST=y

8:在nuttx目录下执行make命令;

********************************************

通过make menuconfig配置系统

********************************************

如果安装了kconfig-frontends工具包,则可以通过make menuconfig来对系统进行

自定义的配置;

阅读(613) | 评论(0) | 转发(0) |

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值