如何在linux嵌入式开发板上开机自动运行用户应用程序(转载)

开机后自动运行用户的应用程序或启动系统服务的命令保存在开发板根文件系统的/usr/etc/rc.local文件中。有的开发板开机后自动运行图形界面程序,需要按住ctrl+c让开发板进入到linux的SHELL提示符界面。

其实可通过注释掉rc.local文件中调用图形界面的命令,增加运行用户应用程序的命令,达到开机自动运行用户应用程序的目的。 下

面以我做的实验为例,描述具体的实现步骤。该方法源于网络,我加以验证,稍做修改,此文相当于转载。

1.进入pc机的Linux 操作系统,在/nfs/usr/下通过mkdir lz 命令新建一个名为lz的文件夹,进入lz文件夹,通过mkdir hello新建一个hello文件夹用来存放我们将要编写的hello.c文件和编译生成的可执行文件。

2.在/nfs/usr/lz/hello下通过vi hello.c命令新建hello.c文件,编辑如下测试程序: #include int main(){ printf("Hello,test arm-linux!/n"); return 0; } 完成编辑后通过:wq保存后退出。

3.主机通过如下命令交叉编译环境编译hello.c: #arm-linux-gcc –o hello hello.c

4.通过ls 命令可以看到在/nfs/usr/lz/hello/下已经生成了hello可执行文件,我们可以在开发板上通过./hello来测试自己编写的hello.c执行情况

5.修改rc.local文件,在文件的最后通过‘#’释掉启动图形界面的指令,增加执行用户应用程序hello的指令,具体实现如下: #export PATH=$QPEDIR/bin:$PATH #qtopia #/usr/qtopia/bin/qtopia /usr/lz/hello/./hello 注:前三行是注释掉启动图形界面,最后一行是添加的执行用户的hello测试程序。

6.重启开发板,通过vivi参数配置让开发板通过nfs挂载主机上的文件系统,这时我们就可以通过超级终端看到开发板已经运行了我们编写的hello程序。

下面是我的uclinux的应用程序编写: 在我们使用的dist文件夹里面有一个文件夹romfs,使用来存放当生成操作系统的时候的文件的,所以我们最后的可执行文件必须要送到这个文件夹存放,这个时候可以按照上面的步骤设置开机的时候启动。当然后至于源文件最好放在这里,但是当make clean的时候就没有了,而且编写应用驱动的应用程序的时候有的头文件的路径不对,所以我们一般到内核的文件夹里面去编写应用程序,然后把可执行文件导入到romfs里面来运行。 另一个方面:关于这里的大型程序的makefile的问题,可以用automake来做的,只是必需要设置好交叉编译器,系统识别即可。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值