我要用eide(2g)启动pc104(intel133,16M内存),该pc104主板要求启动.boot不能大于640k,我又想让该image支持gcc,该image的build如何编写?请各位大侠指教.我使用的是qnx630.
如有例子请贴出来,让大家互相参考一下,谢谢!!!
什么叫“该image支持gcc”?
我的意思是,用我做的build启动硬盘后,能够使用gcc.请唐大侠再予以指教.
只有16M内存,跑gcc有点勉强吧。
我用自己编写的build(如下),启动硬盘后,可使用qconfig命令来应用gcc,例如:qconfig -n “QNX Momentics 6.3.0” -r "gcc"但这种应用方法太麻烦了(每次都要把gcc前面的字符键入一遍),如何修改build才能做到系统启动后直接应用gcc呢?
我的build:
[virtual=x86,bios +compress] .bootstrap = {
startup-bios
PATH=/proc/boot:/bin LD_LIBRARY_PATH=/proc/boot:/lib:/dll procnto
PATH=/proc/boot:/bin:/usr/bin LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll/:/dll procnto
}
[+script] .script = {
pci-bios &
devc-con &
reopen /dev/con1
Disk drivers
devb-eide blk cache=2m,automount=hd0t77:/,automount=cd0:/cd &
Wait for a bin for the rest of the commands
waitfor /x86 10
Some common servers
/sbin/pipe &
/sbin/mqueue &
/sbin/devc-pty &
protransprj &
Start the main shell
[+session] esh
&
io-graphics -dvga xres=640,yres=480,bitpp=8,photon -pphoton
io-graphics -g640x480x8 -dldevg-vga.so -Pvga4.pal
sleep 2
}
make /tmp point to the shared memory area
[type=link] /tmp=/dev/shmem
Redirect console messages
[type=link] /dev/console=/dev/ser1
Programs require the runtime linker (ldqnx.so) to be at
a fixed location
[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so
Add for HD support
[type=link] /usr/lib/libcam.so.2=/proc/boot/libcam.so
add symbolic links for bin, dll, and lib
(files in /x86 with devb-eide)
[type=link] /bin=/x86/bin
[type=link] /dll=/x86/lib/dll
[type=link] /lib=/x86/lib
We use the C shared lib (which also contains the runtime linker)
libc.so
Just in case someone needs floating point and our CPU doesn’t
have a floating point unit
fpemu.so.2
Include the hard disk shared objects so we can access the disk
libcam.so
io-blk.so
For the QNX 4 filesystem
cam-disk.so
fs-qnx4.so
For the CD-ROM filesystem and the PCI
cam-cdrom.so
fs-cd.so
pci-bios
Copy code and data for all executables after this line
[data=copy]
Include a console driver, shell, etc.
esh
devb-eide
devc-con