---------------------------------
请问是不是还要做文件系统,如有了文件系统,那么应用程序必须放在文件系统的什么位置?谢谢。
还是另有好方法?请告诉具体操作步骤。谢谢
29 个解决方案
#1
肯定要有文件系统阿,一般用romfs,应用程序放在romfs/bin下
同时你的应用程序是要交叉编译过的
同时你的应用程序是要交叉编译过的
#2
应用程序是arm-linux-gcc交叉编译好的,假如是放在romfs/bin下,那么系统启动后,通过什么步骤进入到应用程序的main()函数里呢?
#3
既然一切齐备了,那就跟你在pc上运行应用程序没什么两样。
#4
yzx1983(捕风捉影)
-------------
初次做,PC上怎么跑应用程序我也不知道,请告诉一下。谢谢
-------------
初次做,PC上怎么跑应用程序我也不知道,请告诉一下。谢谢
#5
你直接用超级终端进去你的目标板阿,进去之后看到的就是开发主机上romfs下的目录了,
然后进入bin
比如你要执行一个helloword程序
cd /bin
hllowrod
这不就是和pc机上一样吗
不知道我说的是不是你想知道的
然后进入bin
比如你要执行一个helloword程序
cd /bin
hllowrod
这不就是和pc机上一样吗
不知道我说的是不是你想知道的
#6
那么要让这个helloworld程序在系统上电后自动运行,是不是要在哪个文件里写一行运行这个helloworld的代码呢?如果要的话,这行代码该怎么写?谢谢
#7
你的意思是在系统加载后 在etc下有init文件 加上你的应用程序就好了
要是在系统之前可能就是在bootloader改了
要是在系统之前可能就是在bootloader改了
#8
把自己写的程序交叉编译arm-linux-,然后把二进制文件拷贝到文件系统里面。
#9
系统之后啊,
-----------
“在etc下有init文件 加上你的应用程序就好了”
--------
在init文件里什么位置加什么代码才能正常运行应用程序呢?(假定要运行的程序映象文件为hello)
-----------
“在etc下有init文件 加上你的应用程序就好了”
--------
在init文件里什么位置加什么代码才能正常运行应用程序呢?(假定要运行的程序映象文件为hello)
#10
init.d/rc.d里的shell文件,具体文件名忘了,自己trace一下...
#11
好像是
/etc/rc.d/rc.local
跟dos的autoexec.bat有点类似。
/etc/rc.d/rc.local
跟dos的autoexec.bat有点类似。
#12
关键是调用程序的那行代码怎么写呢?谢谢
#13
就是
路径+文件名
例如你在/home/xxx/test/目录里的文件test.out需要执行,就加一行
/home/xxx/test/test/out
路径+文件名
例如你在/home/xxx/test/目录里的文件test.out需要执行,就加一行
/home/xxx/test/test/out
#14
打错了……
/home/xxx/test/test.out
/home/xxx/test/test.out
#15
你的工作只是万里长城走了第一步,慢慢努力吧!
存储介质(一般是flash)要分为三个区
1.BootLoader
2.Kernel
3.RootDisk
三个部分都编译好以后,烧录到flash的固定地址位置,如果烧录位置没错,启动顺序是这样的,
先运行BootLoader,BootLoader从flash上加载内核,内核启动过程中加载RootDisk,如果一切ok,
系统就成功启动了。
然后用终端通过串口连接开发板,应该会连接到控制台,然后就和正常的Linux一样,如果要执行程序,那敲个命令就行了。
存储介质(一般是flash)要分为三个区
1.BootLoader
2.Kernel
3.RootDisk
三个部分都编译好以后,烧录到flash的固定地址位置,如果烧录位置没错,启动顺序是这样的,
先运行BootLoader,BootLoader从flash上加载内核,内核启动过程中加载RootDisk,如果一切ok,
系统就成功启动了。
然后用终端通过串口连接开发板,应该会连接到控制台,然后就和正常的Linux一样,如果要执行程序,那敲个命令就行了。
#16
可是我要的是上电复位后,应用程序自动跑啊,不是通过终端敲命令来运行
#17
/etc/init.d/rcS,把命令行加进去,就自动运行了,这个是启动脚本文件
#18
pyh(天天) ( ) 信誉:98
------------
请问,在/etc下的inittab文件里加命令行(/tmp/hello.o)是否可行?谢谢
------------
请问,在/etc下的inittab文件里加命令行(/tmp/hello.o)是否可行?谢谢
#19
pyh(天天) 说的可行
#20
pyh(天天) ( )
-----------
我的文件系统下/etc下没有init.d这个路径啊,我是使用已有的文件系统,如果我在烧写前,把这init.d目录间好,再写一个rcS脚本文件,行不行呢?谢谢
-----------
我的文件系统下/etc下没有init.d这个路径啊,我是使用已有的文件系统,如果我在烧写前,把这init.d目录间好,再写一个rcS脚本文件,行不行呢?谢谢
#21
不行
#22
pyh(天天)
------
请问该怎么做呢?谢谢
------
请问该怎么做呢?谢谢
#23
我在/etc/rc.d/rc.local脚本的最后加了行“/usr/my_tset.o”,复位后还是出现登录提示信息,程序没有直接运行。用root登录后,输入 ./usr/my_test.o程序能跑起来。请问不要登录提示该怎么做?谢谢
#24
/usr/my_tset.o
去确定这是可执行文件?
去确定这是可执行文件?
#25
你如何确认没有直接运行的?
linux总是需要登录的。
linux总是需要登录的。
#26
个人的系统未必相同,你还是先确定启动脚本文件位置
/etc/inittab文件中,比如::sysinit:/etc/init.d/rcS一行就表示启动脚本文件为/etc/init.d/rcS,你看看你的脚本文件到底是那个,然后在脚本文件中加入命令行就可以了
/etc/inittab文件中,比如::sysinit:/etc/init.d/rcS一行就表示启动脚本文件为/etc/init.d/rcS,你看看你的脚本文件到底是那个,然后在脚本文件中加入命令行就可以了
#27
wzzww(无知者无畏)(我是你的)
--------------
在命令提示符下输入:
/usr/my_tset.o 程序不会运行
./usr/my_tset.o 程序才会运行
--------------
在命令提示符下输入:
/usr/my_tset.o 程序不会运行
./usr/my_tset.o 程序才会运行
#28
我知道什么问题了,在rc.d中需要的是绝对路径
我估计你的绝对路径应该是/root/usr/my_tset.o
我估计你的绝对路径应该是/root/usr/my_tset.o
#29
怎么屏蔽登录提示呢?只有屏蔽掉登录提示后,自动运行的程序 才有用的啊
#1
肯定要有文件系统阿,一般用romfs,应用程序放在romfs/bin下
同时你的应用程序是要交叉编译过的
同时你的应用程序是要交叉编译过的
#2
应用程序是arm-linux-gcc交叉编译好的,假如是放在romfs/bin下,那么系统启动后,通过什么步骤进入到应用程序的main()函数里呢?
#3
既然一切齐备了,那就跟你在pc上运行应用程序没什么两样。
#4
yzx1983(捕风捉影)
-------------
初次做,PC上怎么跑应用程序我也不知道,请告诉一下。谢谢
-------------
初次做,PC上怎么跑应用程序我也不知道,请告诉一下。谢谢
#5
你直接用超级终端进去你的目标板阿,进去之后看到的就是开发主机上romfs下的目录了,
然后进入bin
比如你要执行一个helloword程序
cd /bin
hllowrod
这不就是和pc机上一样吗
不知道我说的是不是你想知道的
然后进入bin
比如你要执行一个helloword程序
cd /bin
hllowrod
这不就是和pc机上一样吗
不知道我说的是不是你想知道的
#6
那么要让这个helloworld程序在系统上电后自动运行,是不是要在哪个文件里写一行运行这个helloworld的代码呢?如果要的话,这行代码该怎么写?谢谢
#7
你的意思是在系统加载后 在etc下有init文件 加上你的应用程序就好了
要是在系统之前可能就是在bootloader改了
要是在系统之前可能就是在bootloader改了
#8
把自己写的程序交叉编译arm-linux-,然后把二进制文件拷贝到文件系统里面。
#9
系统之后啊,
-----------
“在etc下有init文件 加上你的应用程序就好了”
--------
在init文件里什么位置加什么代码才能正常运行应用程序呢?(假定要运行的程序映象文件为hello)
-----------
“在etc下有init文件 加上你的应用程序就好了”
--------
在init文件里什么位置加什么代码才能正常运行应用程序呢?(假定要运行的程序映象文件为hello)
#10
init.d/rc.d里的shell文件,具体文件名忘了,自己trace一下...
#11
好像是
/etc/rc.d/rc.local
跟dos的autoexec.bat有点类似。
/etc/rc.d/rc.local
跟dos的autoexec.bat有点类似。
#12
关键是调用程序的那行代码怎么写呢?谢谢
#13
就是
路径+文件名
例如你在/home/xxx/test/目录里的文件test.out需要执行,就加一行
/home/xxx/test/test/out
路径+文件名
例如你在/home/xxx/test/目录里的文件test.out需要执行,就加一行
/home/xxx/test/test/out
#14
打错了……
/home/xxx/test/test.out
/home/xxx/test/test.out
#15
你的工作只是万里长城走了第一步,慢慢努力吧!
存储介质(一般是flash)要分为三个区
1.BootLoader
2.Kernel
3.RootDisk
三个部分都编译好以后,烧录到flash的固定地址位置,如果烧录位置没错,启动顺序是这样的,
先运行BootLoader,BootLoader从flash上加载内核,内核启动过程中加载RootDisk,如果一切ok,
系统就成功启动了。
然后用终端通过串口连接开发板,应该会连接到控制台,然后就和正常的Linux一样,如果要执行程序,那敲个命令就行了。
存储介质(一般是flash)要分为三个区
1.BootLoader
2.Kernel
3.RootDisk
三个部分都编译好以后,烧录到flash的固定地址位置,如果烧录位置没错,启动顺序是这样的,
先运行BootLoader,BootLoader从flash上加载内核,内核启动过程中加载RootDisk,如果一切ok,
系统就成功启动了。
然后用终端通过串口连接开发板,应该会连接到控制台,然后就和正常的Linux一样,如果要执行程序,那敲个命令就行了。
#16
可是我要的是上电复位后,应用程序自动跑啊,不是通过终端敲命令来运行
#17
/etc/init.d/rcS,把命令行加进去,就自动运行了,这个是启动脚本文件
#18
pyh(天天) ( ) 信誉:98
------------
请问,在/etc下的inittab文件里加命令行(/tmp/hello.o)是否可行?谢谢
------------
请问,在/etc下的inittab文件里加命令行(/tmp/hello.o)是否可行?谢谢
#19
pyh(天天) 说的可行
#20
pyh(天天) ( )
-----------
我的文件系统下/etc下没有init.d这个路径啊,我是使用已有的文件系统,如果我在烧写前,把这init.d目录间好,再写一个rcS脚本文件,行不行呢?谢谢
-----------
我的文件系统下/etc下没有init.d这个路径啊,我是使用已有的文件系统,如果我在烧写前,把这init.d目录间好,再写一个rcS脚本文件,行不行呢?谢谢
#21
不行
#22
pyh(天天)
------
请问该怎么做呢?谢谢
------
请问该怎么做呢?谢谢
#23
我在/etc/rc.d/rc.local脚本的最后加了行“/usr/my_tset.o”,复位后还是出现登录提示信息,程序没有直接运行。用root登录后,输入 ./usr/my_test.o程序能跑起来。请问不要登录提示该怎么做?谢谢
#24
/usr/my_tset.o
去确定这是可执行文件?
去确定这是可执行文件?
#25
你如何确认没有直接运行的?
linux总是需要登录的。
linux总是需要登录的。
#26
个人的系统未必相同,你还是先确定启动脚本文件位置
/etc/inittab文件中,比如::sysinit:/etc/init.d/rcS一行就表示启动脚本文件为/etc/init.d/rcS,你看看你的脚本文件到底是那个,然后在脚本文件中加入命令行就可以了
/etc/inittab文件中,比如::sysinit:/etc/init.d/rcS一行就表示启动脚本文件为/etc/init.d/rcS,你看看你的脚本文件到底是那个,然后在脚本文件中加入命令行就可以了
#27
wzzww(无知者无畏)(我是你的)
--------------
在命令提示符下输入:
/usr/my_tset.o 程序不会运行
./usr/my_tset.o 程序才会运行
--------------
在命令提示符下输入:
/usr/my_tset.o 程序不会运行
./usr/my_tset.o 程序才会运行
#28
我知道什么问题了,在rc.d中需要的是绝对路径
我估计你的绝对路径应该是/root/usr/my_tset.o
我估计你的绝对路径应该是/root/usr/my_tset.o
#29
怎么屏蔽登录提示呢?只有屏蔽掉登录提示后,自动运行的程序 才有用的啊