• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

基于ARM硬件平台Linux开发问题

Linux小学童 2020-03-21 浏览量:478

硬件平台是A7的i.mx6ul芯片。现在学习使用这套开发板。

1、目前有个点灯的程序,编译后,放到开发板上。想让这个点灯开机自运行,该怎么做。我看到网上说修改rc.local文件,但具体怎么修改呢,是不是所有的应用程序都要这么开机自启动。

2、大型的工程项目,源文件可能有很多,这么多源文件怎么编译让它变成一个工程,然后生成一个执行文件,放到开发板上运行。开机自运行的做法和上面一样吗?



0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 对于1.

    这个和具体的发行版有关系,Linux有多套随系统启动加载具体程序机制

    最简单的就是rc.local,此外还有init.d,以及现在比较常见的systemd机制

    这是因为程序执行有可能有很多参数,需要不同的运行环境等等,此外还可能需要重复加载,而rc.local是真正的一次加载,如果出错了也没有其他管理方案,所以有了其他更复杂管理的措施

    rc.local 修改就是把需要执行的程序语句放在exit 0 前面的行中就好


    对于2.

    开机自动运行其实与这个有较大差异:

    首先,自动运行的是已经确定的程序,虽然可能需要一定的运行环境,但这些环境都是程序本身需要的,而不是因为要自动运行附加的(虽然在一些自动运行管理系统中需要加入一些配置,但这个和编译过程本质是不太相同的)

    其次,自动运行最后会落脚在某个可执行命令的调用,可能会附加产生一些信息用来管理,比如pid信息等,但这个程序并不是临时生成的,只是调用,这个与编译过程也是有很大区别的。


    • 发布于 2020-03-21
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:3
  • 有很多的脚本都会被调用到。 要在相应的脚本文件中增加自己执行文件路径。比如 RSC 文件。 用户目录下的. local 文件都是开关会默认执行的。 只要确实能执行到。放在哪里都是一样的。
    • 发布于2020-03-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 1,写一个脚本放在/etc/rc5.d中,文件名S开头

    2、使用makefile进行项目管理,一个make命令编译了所有的文件了

    • 发布于2020-03-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 现在的文件系统多数使用systemd来进行系统进程管理,要增加一个开机启动的功能,只需要在/etc的那些rcX.d里面增加对应脚本即可

    使用gcc的编译指令可以实现编译

    • 发布于2020-04-05
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

基于ARM硬件平台Linux开发问题