每当我学习一个新的东西得时候都是会 遇到一些错误。可是我会很努力的去解决它,今天这个自启动应用程序花了我两个小时的时间才攻克了。所以说遇到问题的时候要去思考、分析。以下我就来谈谈linux上电自启动应用程序,以及我遇到的问题。希望能给你带来一些启示。

我这里有一个项目是用鼠标和触摸屏代表输入设备,LCD代表显示设备。一个简易的数码相框,当我制作成功后手动运行一些命令是可以正常启动应用程序的,当我写成一个脚本后程序就读取错误了,描写叙述例如以下:

我在/usr/etc/文件夹下建了一个test.sh 脚本程序,内容例如以下:(记得加上可运行权限)

#!/bin/sh

cd /mnt

/sbin/insmod s3c_ts.ko                /* 载入触摸屏驱动 */

./digitpic MSYH.TTF &            /* 应用程序的启动 */

在/etc/init.d/rcS   最后一行加入exec /usr/etc/test.sh

可是程序上电后启动打印触摸数据读取错误,打印的信息是从digitpic这个应用程序中打印出来的。可是我用ts_calibrate 命令来測试  触摸屏驱动程序确实是成功载入了的,这里就让我感觉非常意外,后来我找了各种方法都没有成功,最后我定位信息打印去看,才发现是配置触摸屏错误。原来才是我们没有配置触摸屏,可是我们确实在/etc/profile中配置了触摸屏的,内容例如以下:

export TSLIB_TSDEVICE=/dev/event0

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_CONFFILE=/etc/ts.conf

export TSLIB_PLUGINDIR=/lib/ts/

export TSLIB_CONSOLEDEVICE=/dev/tty1

export TSLIB_FBDEVICE=/dev/fb0

经过我对Linux文件启动顺序才发现/etc/init.d/rcS 文件比/etc/profile 文件先运行,在这里最终把错误找到了。当我们运行/etc/init.d/rcS这个文件中面的test.sh脚本程序的时候。我们还没有配置触摸屏驱动程序,可是我们已经在使用这个触摸屏驱动程序了,所以这个触摸屏驱动的配置应该放在这个脚本之前去运行,所以这里问题得到了完美的解决。

这里送给朋友们几句话。遇到问题一定要自己多思考,自己想办法去解决。有些人就得说了好浪费时间,我在这里说一下,一个程序猿的习惯非常重要,假设你一心是想在网上找代码,你绝对成为不了高手,仅仅有自己动手实践了才是真理,非常多网友喜欢在群里面或者论坛上发一些跪求代码。求大神解答啊之类的话,非常多网友连自己都没有定位到自己的问题所在,还找别人去给你解答,你觉得这个可能吗?

linux上电自启动应用程序具体解释的更多相关文章

  1. linux 下通过源代码安装程序 ./configure 解释

    大家 都知道在 linux 通过源代码 安装程序 1. 下载源码 2.解压缩 3. 执行 ./configure 4. make 5 make install make 命令 是对 makefile ...

  2. Linux下的应用程序开机自启动

    Linux下的应用程序开机自启动,目前我知道的有2种: 1.将启动语句写到/etc/rc.local 2.在init.d放置启动脚本 第一种,很简单,直接写进去就行,比如说: /db/mongodb/ ...

  3. 【linux基础】如何开机自启动某个程序-linux工具-ubuntu

    前言 实际使用中应用程序或者服务需要开机自启动,而不是人为手动开启运行,那么,该如何做呢,本文对此进行介绍. 操作过程 1. 确定系统的桌面环境: 具体可参考here; 2. 如何自启动: 博主ubu ...

  4. 在Linux系统如何让程序开机时自动启动

    在Linux系统如何让程序开机时自动启动      核心提示:系统的服务在开机时一般都可以自动启动,那在linux系统下如果想要程序在开机时自动启动怎么办?我们知道在 windows系统“开始”--& ...

  5. Linux中java应用程序的部署,使其开机自动启动

    初步需求:将在Windows/MyEclipse中开发的java应用程序部署到Linux服务器上,使其运行 针对需求,可以参考下面这些文章,但是这些文章很多东西没有提及到,我自己尝试部署运行 在lin ...

  6. 如何使Linux系统上的程序开机后自动运行 (转)

    Linux有自己一套完整的启动体系,抓住了Linux启动的脉络,Linux的启动过程将不再神秘. 阅读之前建议先看一下附图. 本文中假设inittab中设置的init tree为: /etc/rc.d ...

  7. 详解Linux目录(目录树详细解释)

    给大家一篇关于Linux目录 方面的详细说明,好好读一下! Linux目录详解(RHEL5.4) linux有四种基本文件系统类型:--普通文件:如文本文件.c语言源代码.shell脚本等,可以用ca ...

  8. C++ 无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序。

    C++  无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序.但可以写入到H ...

  9. linux 开机自启动软件(包含xampp方法)

    linux设置apache和mysql: linux开启启动的程序一般放在/etc/rc.d/init.d/里面,/etc/init.d/是其软连接. mysql设为linux服务 cp /usr/l ...

随机推荐

  1. 求第k大的数(用到快速排序算法的思想)

    //下面两种part效率比较:相同运算量下part比part2快5倍左右,part2写法简单但是效率低 #include "stdafx.h" #include <iostr ...

  2. Servlet 规范笔记—基于http协议的servlet

    在上一章节,我们大概的描述了servlet的规范以及servlet和servlet容器的概念和用途,我们清楚的知道servlet容器提供了接收来自client端的请求,然后根据请求进行处理(如:执行对 ...

  3. 疯狂html5讲义(二):HTML5简的经常使用元素与属性(二):html5新增的通用属性

    1.contentEditable属性 true时可直接编辑html元素里面的内容.且具有"可继承"的特点. 编辑后不要刷新页面.否则编辑的内容会丢失,能够通过该元素的innerH ...

  4. 1.2 Use Cases中 Commit Log官网剖析(博主推荐)

    不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ Commit Log 提交日志 Kafka can serve as a kind ...

  5. win7桌面有个无法删除的IE图标

    平台:win7 症状:安装软件时没仔细看,结果装上了一大堆,挨个卸载后桌面残留了一个IE无法删除.在该图标上点右键只有“打开”“属性”“创建快捷方式”三个选项,主页默认为www.2345.com. 解 ...

  6. document.write的注意点

    如果给button点击事件添加document.write会消除页面所有元素,包括button按钮 <!DOCTYPE html> <html> <head> &l ...

  7. [Spark源代码剖析] DAGScheduler划分stage

    转载请标明出处:http://blog.csdn.net/bigbigdata/article/details/47293263 本文基于Spark 1.3.1 先上一些stage相关的知识点: DA ...

  8. JDBC 专题

    digest: getFetchSize()方法不是获得记录数,而是获得每次抓取的记录数,默认是0,也就是说不限制.可以用setFetchSize()来设置,而getFetchSize()是用来读出那 ...

  9. JS错误记录 - 记录上次登陆的用户名

    <script> //步骤 1.submit => 用户名存进cookie 2. onload => 从cookie读取用户名 window.onload = function ...

  10. 【AtCoder Beginner Contest 074 A】Bichrome Cells

    [链接]h在这里写链接 [题意] 在这里写题意 [题解] 在这里写题解 [错的次数] 0 [反思] 在这了写反思 [代码] #include <bits/stdc++.h> using n ...