uCLinux下的第一个应用程序

2024-01-04 23:38

本文主要是介绍uCLinux下的第一个应用程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

uCLinux下的第一个程序很快就跑过了,呵呵。记录下过程吧:

 

1、建立目录

     在uClinux-dist/user 目录下新建目录:MyApp

2、编写程序

     cd MyApp

     vi myapp.c

 

     在vi里编写myapp.c程序如下:

     #include <stdlib.h>
     #include <stdio.h>
     int main(void)
    {
          printf(“Great! Very good!./n”);
          return 0;
    }

 

3、编写Makefile

     vi Makefile

 

     在vi里写Makefile如下:

     EXEC = myapp
     OBJS = myapp.o
     all: $(EXEC)
           $(EXEC): $(OBJS)
           $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS)
     romfs:
           $(ROMFSINST) /bin/$(EXEC)
     clean:
           -rm -f $(EXEC) *.elf *.gdb *.o

 

     注:缩进别忘了用tab键

 

4、修改usr/Makefile

     为了让编译器编译上述添加的内容,在user/Makefile 中添加一句(一般按照字母排列):
     dir _$(CONFIG_USER_MYAPP) += MyApp

 

5、修改config/config.in
     config/config.in 文件中添加的内容会在对用户选项进行配置时反映出来。在文件的最后,增加一条:
     ######################################################

     mainmenu_option next_comment
     comment 'My First Application'
     bool 'myapp' CONFIG_USER_MYAPP
     endmenu
     ######################################################

 

6、定制内核

     执行make menuconfig,进入Main Menu

     进入Kernel/Library/Defaults Selection  --->后

     将第三项Customize Ventor/...选中

 

     exit保存,自动进入下一个画面

     然后进入My First Application后,

     选择myapp

 

     exit保存

 

7、编译内核

     make dep
     make clean
     make lib_only
     make user_only
     make romfs
     make image
     make

 

8、内核烧写

     成功后会在images下面出现三个文件romfs.img,uclinux_ram.bin.gz,uclinux_rom.bin

     1) 将uclinux_rom.bin通过串口拷到了44b0开发板的RAM中:

         串口超级终端中输入:loadb 0x0c008000

         在超级终端传送文件:uclinux_rom.bin

     2) 擦除flash

         erase 0x5000 0x1ffff

     3) 拷ucLinux内核到0x5000

         cp 0x0c008000 0x5000 size

         这里的size大小忘记了,具体算法是:

         如果在1)中传送过程中传送的大小(16进制)是size_1,那么

         size = size_1/4 + 2

 

9、运行程序

     开发板重启后,进入uclinux后

     cd /bin

     这时候会发现bin下面多了个myapp

     ./myapp

     将打印

     Great! Very good!.

 

 

 

 

 

这篇关于uCLinux下的第一个应用程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/570963

相关文章

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte

Spring Roo 实站( 一 )部署安装 第一个示例程序

转自:http://blog.csdn.net/jun55xiu/article/details/9380213 一:安装 注:可以参与官网spring-roo: static.springsource.org/spring-roo/reference/html/intro.html#intro-exploring-sampleROO_OPTS http://stati

使用gradle做第一个java项目

涉及到的任务如下: assemble任务会编译程序中的源代码,并打包生成Jar文件,这个任务不执行单元测试。 Total time: 5.581 secs E:\workspace\Test>gradle assemble :compileJava :processResources UP-TO-DATE :classes :findMainClass :jar :b

vue2实践:第一个非正规的自定义组件-动态表单对话框

前言 vue一个很重要的概念就是组件,作为一个没有经历过前几代前端开发的我来说,不太能理解它所带来的“进步”,但是,将它与后端c++、java类比,我感觉,组件就像是这些语言中的类和对象的概念,通过封装好的组件(类),可以通过挂载的方式,非常方便的调用其提供的功能,而不必重新写一遍实现逻辑。 我们常用的element UI就是由饿了么所提供的组件库,但是在项目开发中,我们可能还需要额外地定义一

Java Web应用程序的推荐目录结构

以前没有用过maven管理过项目的依赖,最后使用上了maven,发现通过不能方式建立出来的web应用程序目录结构基本都不一样,既然每次都要到网上搜索如何建立maven管理的Web应用程序,不如自己找百度谷歌一下。 找了半天 ,感觉比较好的maven管理的web应用程序目录结构是这个: ├── pom.xml└── src├── main│ ├── java│ │ └── myg

SpringMVC的第一个案例 Helloword 步骤

第一步:web.xml配置 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocati

我的第一次份实习工作-iOS实习生-第一个月

实习时间:2015-08-20 到 2015-12-25  实习公司;福建天棣互联有限公司 实习岗位:iOS开发实习生 第一个月: 第一天来公司,前台报道后,人资带我去我工作的地方。到了那,就由一个组长带我,当时还没有我的办公桌,组长在第三排给我找了一个位置,擦了下桌子,把旁边的准备的电脑帮我装了下,因为学的是iOS,实习生就只能用黑苹果了,这是我实习用的电脑。 帮我装了一下电脑后,开机

从零开始:打造你的第一个餐厅点餐小程序

目录 1 为什么选择点餐小程序2 会有哪些功能2.1 顾客端2.2 服务员端2.3 后厨端2.4 收银端2.5 管理员(老板)端 3 开发工具选择4 你将获得什么让我们开始吧 最近,有不少粉丝咨询,有没有系统的低代码学习教程呀?为啥你的教程有的刚看的提起兴趣,怎么突然就中断了。有没有系统的视频学习教程呀,你是不是还有压箱底的好宝贝,没开放给我们看呀。 还真不是,压箱底的好宝贝已