将自己应用程序编译进uClinux内核

uClinux移植概述 uClinux移植概述作者:姜江E-mail:jznsmail@tom.comBlog:http://blog.csdn.net/jznsmail1.建立开发环境    作为uClinux系统的移植和开发的主机最好使用Linux操作系统,如果选择Windows平台作为开发平台则需要Cygwin软件包的支持。在这里我们选用的开发平台是Fedora Core 2,内核版本为2.4.x。在行uCl 阅读详情
 

板子上运行应用程序

 

1 可以在虚拟机上单独编译自己的应用程序,然后用U盘拷贝到开发机上的C盘目录,利用ftp 服务器传到板子上,直接./xxxx ,xxxx为应用程序名。

 

2 将自己的应用程序编译进内核

  首先需明白,一般应用程序都放在usr目录下面,参考usr/ping,因此自己写的应用程序可以仿照 ping添加来。 主要涉及四个文件,一个应用程序源文件,一个Makefile文件,一个上一级目录的Makefile文件,加上config/config.in文件(用于构建菜单)。大概的添加步骤如下:

(1)      应用程序源文件。在usr下新建目录hello,然后在/usr/hello 下添加hello.c,内容如下

#include<stdio.h>

int main(void)

{

printf("hello world\n");

return 0;

}

 

(2)      Makefile文件。将/usr/ping下面的Makefile文件拷贝到/usr/hello下面来,Makefile 文件如下

 

EXEC = ping

OBJS = ping.o

 

all: $(EXEC)

 

$(EXEC): $(OBJS)

       $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS$(LDLIBS_

网工实验笔记:SNMP的配置 简单网络管理协议SNMP(Simple Network Management Protocol)是广泛应用于TCP/IP网络的网络管理标准协议。SNMP提供了一种通过运行网络管理软件的中心计算机(即网络管理工作站)来管理设备的方法。 阅读详情

相关推荐

03_fops_write 应用层向内核层写数据

源码 #include <linux/init.h> //初始化头文件 #include <linux/module.h> //最基本的文件, 支持动态添加和卸载模块 #include <linux/miscdevice.h> //注册杂项设备头文件 #include <linux/fs.h> //注册设备节点的文件结构体 #include <linux/uaccess.h> //copy_to_use

米兰的无线电台 405

如何将自己的应用程序编译uCLinux

如何将自己的应用程序编译uCLinux.pdf

Windows Docker Desktop部署MaxKB详细教程

MaxKB(Max Knowledge Base)是一款基于大语言模型(LLM)和检索增强生成(RAG)技术的开源知识库问答系统,旨在帮助企业、教育机构及研究组织高效管理知识并提供智能问答服务。

猿小白的博客 1314

(三)嵌入式:交叉编译应用程序并为内核添加APP配置

一.交叉编译应用程序 首先在uCLinux-dist目录里面user目录,创建文件夹scu,接着在scu文件夹里面创建文件hello.c和Makefile,并编辑这两个文件。如图1-1所示: 图1-1 编辑hello.c和Makefile 编写好后,现在Ubuntu下面编译hello.c,并运行,如图1-2所示: 图1-2 ubuntu运行hello 退回上级目录user,编辑Ma...

wahahaguolinaiyou的博客 803

将自己编写的程序静态编译内核

自己编写了驱动程序,现在需要把驱动程序加入到内核里面静态编译。 网上找了一些方法,但是都不是很理想。 经过一番折腾终于搞定。 我的linux内核版本是3.08  Linux内核源码树的每个目录下都有两个文档Kconfig和Makefile。分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文档相关的内核配置菜单。在执行内核配置make me

瞅你咋地 1641

linux 程序更新(程序升级、脚本升级)功能开发流程(软件更新流程、软件升级流程)

【代码】linux 程序更新(程序升级)功能开发流程。

Dontla的博客 5241

uClinux学习笔记之二 - 将新增应用程序编译内存镜像文件

将新增应用程序编译内存镜像文件            将应用程序加入内存镜像文件,一般有两种方法:一种是先生成内存镜像文件,然后挂载内存镜像文件,将里面的目录拷到另一个可读写的目录下,将单独编译好的应用程序去,然后再用genromfs生成内存镜像文件。第二种方法就是编辑uClinux的配置文件,使其在执行make romfs命令时与其它运用程序一起加入。显然第二种方法

I2Cbus的专栏 2157

uClinux中添加应用程序2

以下通过一个具体实例向读者介绍将程序添加到uClinux的标准方法。例如要把前面提到的源程序lednxy.c添加到运行于目标板上的uClinux操作系统中,则文件应在目录/home/nie/uClinux-Samsung/user下,uClinux-Samsung/user目录并建立个自己的子目录,比如键入:mkdir myapp,这样在user目录下就建立了一个新的子目录myapp,把led

hitlerisyou的专栏 1308

把自己的应用程序加载到uClinux中运行

    昨天终于顺利完成了在SkyEye上面仿真运行uClinux的工作,今天决心乘胜追击,把一个hello,world程序加载到uClinux中去运行。经过差不多一天的摸索,到晚饭时分终于成功!下面把开发过程总结一下。    首先是应用程序的存放位置。在uClinux的安装目录(我的机器上是/home/user/uClinux-dist)下有个user目录,里面存放的就是系统的应用程序,一般

3470

如何将自己的应用程序编译uCLinux/Linux

导读:      前些天移植完uCLinux后想自己写LCD应用程序编译uCLinux的romfs中,在网络中搜索了半天,愣是没找到一篇相关的介绍,而关于Makefile的编写的资料倒是很多,看了好长时间也没什么用处。最好经摸索思考,终于成功,特写出方法供大家参考。   注意:OS_HOME为您的uCLinux/Linux源代码根目录。   一、 编写自己的源程序代码:   uCLin

yingfox的专栏 1089

uClinux 内核编译常见错误及解决方法(zt)

uClinux 内核编译常见错误及解决方法(uClinux kernel compile Troubleshooting)    uClinux kernel compile Troubleshooting V 0.1    chinajz    c_xvidtune@hotmail.com    http://spaces.msn.com/chinajz/    ================

我的仓库 My Storehouse 7890

编译uclinux下的应用程序内核模块

编译uclinux下的应用程序内核模块   目        录 编译uclinux下的应用程序内核模块... 1 目       录... 1 实验环境... 1 编译应用程序的正确方法... 2 编译运行Helloworld程序... 2 编译运行多文件Helloworld程序... 3 编译应用程序的方法摸索... 4 其他错误... 5 编

lurayvis的专栏 1968

uClinux内核编译并在skyeye上运行

uClinux内核编译之前,要保证arm-elf-tools工具链安装正确,并在PATH中指定路径。首先下载uClinux源码,http://sourceforge.net/projects/uclinux/files/,我下载的是uClinux-dist-20100315.tar.bz2源码包。并把源码包放在/home目录中。uClinux源码安装在/usr/local/sr...

ROF 247

uclinux用户应用程序添加

uclinx用户应用程序添加过程,在网上有很多资料,但是大部分是转的,而且具体方法非常多,自己在实践的过程中,找到了一种自己比较喜欢的,没有什么技术含量,算是记录吧1)在/user目录下新建sample目录,并将hello.c和Makefile文件添加到此文件下.hello.c #include "stdio.h"int main (void){printf("hell

冷竹的专栏 688

将hello程序作为驱动程序编译系统内核

0x00开始 恩,可能是我比较愚钝,一个内核编译搞了一天,各种问题,各种bug,几度无奈,也是因为我突发奇想,并没有按照原来的那种操作,我直接把helloworld程序放到内核模块中编译成了一个驱动程序,虽然其中遇到了不知道多少的问题,不过最终是个完美的结局,给自己点个赞! 好了,废话不多说,直接开始还原我的helloworld驱动内核程序编译流程。 0x01下载内核并解压 编译内核,...

最高权限比特流 1114

将自己的模块编译内核

一、编写驱动程序   将需要编译内核的源代码编写好,我举个最简单的Hello World的例子:   hello.c #include <linux/init.h> #include <linux/module.h> static int __init hello_init (void) { printk("*****hello init test***...

duhui75的博客 530

树莓派4B Linux的底层驱动编写体验

一、编写前的准备工作        本博客是在虚拟机中编写驱动程序,然后交叉编译到树莓派。所以需要确认几件事:        1. 确保树莓派的内核版本和虚拟机中的Linux内核版本保持一致,否则无法安装驱动;        2. 虚拟机中有交叉编译工具;    &nbs

qq1140920745的博客 3978

基于MATLAB的电梯运行速度控制仿真.zip

基于MATLAB的电梯运行速度控制仿真

上一篇: 湖北电信暑假实习
下一篇: 2012届华为校园招聘上机考试题目1(9月6日下午1点场)
integrity0123
博客等级 码龄16年 7粉丝 25原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值