not
found。那么首先就要考虑root
的$PATH里是否已经包含了这些环境变量。主要是这四个:/bin
,/usr/bin,/sbin,/usr/sbin。四个主要存放的东东:./bin:bin为binary的简写主要放置一些系统的必备执行档例如:cat、cp、chmod
df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。/usr/bin:主要放置一些应用软体工具的必备执行档例如c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、
gzip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、
newaliases、nslookup
passwd、quota、smb*、wget等。/sbin:主要放置一些系统管理的必备程式例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、
ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、
runlevel、shutdown等。/usr/sbin:放置一些网路管理的必备程式例如:dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等。可以在家目录下查看.bash_profile里的PATH。如果是:PATH=$PATH:$HOME/bin则需要添加成如下:PATH=$PATH:$HOME/bin:/sbin:/usr/bin:/usr/sbin
你的想法是对的,是为了不用进入相关目录就可以执行命令。你应该了解系统路径相关的知识,那你应该知道,普通用户和管理员用户的系统路径是有一点去区别的,例如/usr/sbin目录是管理员能够执行命令的目录。而/usr/bin目录是大部分用户都可以访问的命令目录,因此你把命令链接放到这个目录后,大部分普通用户都可以直接调用。而如果你设置PATH路径的话,那么你需要没每一个用户反复设置,例如修改用户的.bash_profile文件配置PATH变量,这个时候就非常麻烦了。相对来说,直接做链接的话就更简单一点,不知道我有没有说清楚,希望可以帮助到你。开机后自动运行用户的应用程序或启动系统服务的命令保存在开发板根文件系统的/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 <stdio.h>
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程序。
另外,虚机团上产品团购,超级便宜
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)