- Setting up an Embedded Linux Development Machine
- Configuration Management: Version Control, Bug Tracking and Continuous Integration
- Developing with Virtual Machines
- Emulators and Virtual Hardware Platforms
- ARM Linux development
- Linux Kernel Development
- Embedded Android Development
- Training Materials about Embedded Linux and Android
- Common Software Packages for Embedded Systems
- ARM Programming
- Fixing Common Compile Error Messages
- Programming Books
- Debugging
- Software QA
- Miscellaneous Tips and How-Tos
- Where and How to Ask Questions
2012-10-31
Slitaz -- chroot arm
root@slitaz:~# tazdev -c --arch=arm
Mounting virtual filesystems... [ Done ]
Chrooting to: /home/slitaz/cooking/arm/chroot
1.
root@slitaz:~# slitaz
SliTaz GNU/Linux
================================================================================
Release :
Architecture : i486
Kernel : 2.6.37-slitaz
Boot options : root=/dev/sda7 autologin acpi=off
Home path :
Configs :
Log files :
Packages DB : /var/lib/tazpkg
Installed : 481 packages
Mirror : http://mirror.slitaz.org/packages/4.0/
/media/mirror/slitaz/packages/4.0/
================================================================================
Config file: /etc/slitaz/slitaz.conf
root@slitaz:~# tazdev -c --arch=arm
Mounting virtual filesystems... [ Done ]
Chrooting to: /home/slitaz/cooking/arm/chroot
root@slitaz:/# slitaz
SliTaz GNU/Linux
================================================================================
Release : cooking
Architecture : i486
Kernel : 2.6.37-slitaz
Boot options : root=/dev/sda7 autologin acpi=off
Home path : /home/slitaz
Configs : /etc/slitaz
Log files : /var/log/slitaz
Packages DB : /var/lib/tazpkg
Installed : 149 packages
Mirror : http://mirror.slitaz.org/packages/cooking/
================================================================================
Config file: /etc/slitaz/slitaz.conf
root@slitaz:/#
2.
tux@slitaz:~$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i486-slitaz-linux/4.5.2/lto-wrapper
Target: i486-slitaz-linux
Configured with: /home/slitaz/wok/gcc/source/gcc-4.5.2/configure --libexecdir=/usr/lib --enable-nls --enable-languages=c,c++,objc,fortran --enable-shared --with-system-zlib --enable-clocale=gnu --enable-objc-gc --enable-__cxa_atexit --enable-lto --enable-threads=posix --disable-bootstrap --with-pkgversion=SliTaz --with-tune=i486 --build=i486-slitaz-linux --host=i486-slitaz-linux
Thread model: posix
gcc version 4.5.2 (SliTaz)
tux@slitaz:~$ sudo tazdev -c --arch=arm
Mounting virtual filesystems... [ Done ]
Chrooting to: /home/slitaz/cooking/arm/chroot
root@slitaz:/# arm-slitaz-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=arm-slitaz-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/cross/arm/tools/lib/gcc/arm-slitaz-linux-gnueabi/4.6.3/lto-wrapper
Target: arm-slitaz-linux-gnueabi
Configured with: ../gcc-4.6.3/configure --prefix=/cross/arm/tools --libexec=/cross/arm/tools/lib --target=arm-slitaz-linux-gnueabi --enable-shared --enable-c99 --enable-long-long --enable-__cxa_atexit --with-system-zlib --enable-plugin --disable-multilib --disable-libssp --disable-checking --disable-werror --with-pkgversion=SliTaz --with-bugurl=https://bugs.slitaz.org/ --with-sysroot=/cross/arm/sysroot --with-arch=armv6 --with-fpu=vfp --with-float=hard --enable-languages=c,c++
Thread model: posix
gcc version 4.6.3 (SliTaz)
root@slitaz:/#
2012-10-29
Slitaz -- mtpaint-grab
Grab screenshot
tux@slitaz:~$ cat /usr/share/applications/mtpaint-grab.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Grab screenshot
Name[fr]=Capture d'écran
Name[pt]=Captura de Screenshots
Exec=mtpaint -s
Icon=camera-photo
Type=Application
Terminal=false
Categories=Application;Graphics;
tux@slitaz:~$ tazpkg info mtpaint
Tazpkg information
================================================================================
Package : mtpaint
Version : 3.40
Category : graphics
Short desc : Light paint programm and image manipulation.
Maintainer : pankso@slitaz.org
Depends : gtk+ libpng lcms
Build deps : gtk+-dev libpng-dev lcms-dev
Web site : http://mtpaint.sourceforge.net/
================================================================================
.
tux@slitaz:~$ cat /usr/share/applications/mtpaint-grab.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Grab screenshot
Name[fr]=Capture d'écran
Name[pt]=Captura de Screenshots
Exec=mtpaint -s
Icon=camera-photo
Type=Application
Terminal=false
Categories=Application;Graphics;
tux@slitaz:~$ tazpkg info mtpaint
Tazpkg information
================================================================================
Package : mtpaint
Version : 3.40
Category : graphics
Short desc : Light paint programm and image manipulation.
Maintainer : pankso@slitaz.org
Depends : gtk+ libpng lcms
Build deps : gtk+-dev libpng-dev lcms-dev
Web site : http://mtpaint.sourceforge.net/
================================================================================
.
Slitaz -- mtpaint
8. Layers
For some types of painting and image manipulation it is convenient to use multiple layers of images rather than a single image. For example you may want to overlay text or drawings over a photograph and then be able to move or edit each layer independently.
8.1 Creating
To start using layers with mtPaint you must first load the image you want to be the background. This is the most important step as all the other layers sit on top of this image (also, the size of the background image determines the size of the final composite image). Next you must create a new layer by using the Layers window ('L' key or View menu). You can then edit, manipulate, load to, or save this new layer just like any other image. The only difference is that this image can have a transparent colour which will show the pixels used on the background image (or lower layers if there are any).
Ctrl-N Create new image
Ctrl-O Open Image
Ctrl-S Save Image
Ctrl-Shift-S Save layers file
Ctrl-Q Quit program
Ctrl-A Select whole image
Escape Select nothing, cancel paste box
J Lasso selection
Ctrl-C Copy selection to clipboard
Ctrl-X Copy selection to clipboard, and then paint current pattern to selection area
Ctrl-V Paste clipboard to centre of current view
Ctrl-K Paste clipboard to location it was copied from
Ctrl-Shift-V Paste clipboard to new layer
Enter/Return Commit paste to canvas
Shift+Enter/Return Commit paste and swap canvas into the clipboard
Arrow keys Paint Mode - Move the mouse pointer
Arrow keys Selection Mode - Nudge selection box or paste box by one pixel
Shift+Arrow keys Nudge mouse pointer, selection box or paste box by x pixels - x is defined by the Preferences window
Ctrl+Arrows Move layer or resize selection box
Ctrl+Shift+Arrows Move layer or resize selection box by x pixels
Enter/Return Paint Mode - Simulate left click
Backspace Paint Mode - Simulate right click
2012-10-25
Slitaz -- pv
Linux dd Command Show Progress Copy Bar With Status
1.
root@slitaz:~# pv -tpreb /media/raspbian/raspi/2012-08-16-wheezy-raspbian.img | dd of=/dev/sdb
1.81GB 0:08:30 [3.62MB/s] [=================================>] 100%
3788800+0 records in
3788800+0 records out
2.
root@slitaz:~# tazpkg info pv
Tazpkg information
================================================================================
Package : pv
Version : 1.1.4
Category : misc
Short desc : pipe viewer for monitoring data through a pipeline
Maintainer : allan316@gmail.com
Web site : http://www.ivarch.com/programs/pv.shtml
================================================================================
3.
root@slitaz:~# pv --help | head
Usage: pv [OPTION] [FILE]...
Concatenate FILE(s), or standard input, to standard output,
with monitoring.
-p, --progress show progress bar
-t, --timer show elapsed time
-e, --eta show estimated time of arrival (completion)
-r, --rate show data transfer rate counter
-b, --bytes show number of bytes transferred
-f, --force output even if standard error is not a terminal
4.
root@slitaz:~# ls -lh /media/raspbian/raspi/2012-08-16-wheezy-raspbian.img
-rw-r--r-- 1 tux tux 1.8G Aug 27 22:56 /media/raspbian/raspi/2012-08-16-wheezy-raspbian.img
root@slitaz:~#
raspi -- GPU
Open Source ARM userland
Source code for ARM side libraries for interfacing to Raspberry Pi GPU.
README.md
This repository contains the source code for the ARM side libraries used on Raspberry Pi. These typically are installed in /opt/vc/lib and includes source for the ARM side code to interface to: EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG.
Use buildme to build. It requires cmake to be installed and an arm cross compiler.
2012-10-24
Slitaz -- alsamixer
[Mixer] No hardware mixing, inserting volume filter.
menu --> Multimedia --> Alsamixer Volume mixer
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
ID_VIDEO_CODEC=ffmpeg2
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 2 ch, s16le, 256.0 kbit/16.67% (ratio: 32000->192000)
ID_AUDIO_BITRATE=256000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
AO: [alsa] 48000Hz 2ch floatle (4 bytes per sample)
ID_AUDIO_CODEC=ffac3
[Mixer] No hardware mixing, inserting volume filter.
Starting playback...
[ac3 @ 0x861db5c]frame sync error
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
ID_VIDEO_ASPECT=1.3333
[swscaler @ 0x86bc940]BICUBIC scaler, from yuv420p to rgb24 using C
VO: [x11] 720x480 => 720x540 Planar YV12 [zoom]
[swscaler @ 0x86bc940]No accelerated colorspace conversion found from yuv420p to bgra.
Slitaz -- git-gui
git-gui.desktop
fix
Exec=/usr/lib/git/git-core/git-gui
to
Exec=/usr/lib/git-core/git-gui
1.
tux@slitaz:~$ tazpkg info git-gui
Tazpkg information
================================================================================
Package : git-gui
Version : 0.13.0
Category : development
Short desc : Graphical interface for the Git dRCS.
Maintainer : ben@seawolfsanctuary.com
Depends : tk git
Build deps : tk git
Web site : http://www.kernel.org/pub/software/scm/git/docs/git-gui.html
================================================================================
2.
tux@slitaz:~$ cat /usr/share/applications/git-gui.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Git GUI
Exec=/usr/lib/git/git-core/git-gui
Icon=git-gui
Type=Application
Categories=Development;
3.
tux@slitaz:~$ ls -l /usr/lib/git/git-core/git-gui
ls: /usr/lib/git/git-core/git-gui: No such file or directory
tux@slitaz:~$ ls -l /usr/lib/git
ls: /usr/lib/git: No such file or directory
4.
tux@slitaz:~$ tazpkg list-files git-gui | head
Installed files with: git-gui
================================================================================
/usr/bin/git-citool
/usr/bin/git-gui
/usr/bin/git-gui--askpass
/usr/lib/git-core/git-citool
/usr/lib/git-core/git-gui
/usr/lib/git-core/git-gui--askpass
/usr/share/applications/git-gui.desktop
tux@slitaz:~$
Git權威指南第3章
http://product.china-pub.com/194010
2012-10-16
raspi -- openwrt
openwrt-brcm2708-sdcard-vfat-ext4_240.img.7z 5.5 MB
Description:
OpenWrt 12.09 Beta running on a Rpi with 240 Mbyte of free memory.
Linux kernel: 3.3.8
Added kernel patches up until (24 Sept. 2012).
Updated Rpi firmware to 25 sept. 2012 version.
1.
BusyBox v1.19.4 (2012-09-12 11:44:04 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
ATTITUDE ADJUSTMENT (Bleeding Edge, r33369)
-----------------------------------------------------
* 1/4 oz Vodka Pour all ingredients into mixing
* 1/4 oz Gin tin with ice, strain into glass.
* 1/4 oz Amaretto
* 1/4 oz Triple sec
* 1/4 oz Peach schnapps
* 1/4 oz Sour mix
* 1 splash Cranberry juice
-----------------------------------------------------
2.
root@OpenWrt:~# uname -a
Linux OpenWrt 3.3.8 #1 PREEMPT Wed Sep 26 10:49:42 CEST 2012 armv6l GNU/Linux
3.
root@OpenWrt:~# ifconfig -a
eth0 Link encap:Ethernet HWaddr B8:27:EB:32:F4:CE
inet addr:192.168.1.30 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:133 errors:0 dropped:0 overruns:0 frame:0
TX packets:138 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:10347 (10.1 KiB) TX bytes:13166 (12.8 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:72 errors:0 dropped:0 overruns:0 frame:0
TX packets:72 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5138 (5.0 KiB) TX bytes:5138 (5.0 KiB)
4.
root@OpenWrt:~# nslookup www.slitaz.org
Server: 127.0.0.1
Address 1: 127.0.0.1 localhost.lan
Name: www.slitaz.org
Address 1: 94.23.61.29 pangolin.pimentvert.com
5.
root@OpenWrt:~# dmesg | head
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Linux version 3.3.8 (nathan@maya) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #1 PREEMPT Wed Sep 26 10:49:42 CEST 2012
[ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
[ 0.000000] Machine: BCM2708
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] On node 0 totalpages: 61440
[ 0.000000] free_area_init_node: node 0, pgdat c039059c, node_mem_map c03db000
[ 0.000000] Normal zone: 480 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
.
2012-10-15
mk802 -- tinycore - ssh
1.
root@slitaz:~# ssh tc@192.168.1.31
Secure login powered by Dropbear SSH server on a10Core.
tc@192.168.1.31's password:
(�-
//\ Core is distributed with ABSOLUTELY NO WARRANTY.
v_/_ www.tinycorelinux.com
2.
tc@box:~$ uname -a
Linux box 3.0.42-slitaz #1 PREEMPT Tue Oct 9 19:22:19 UTC 2012 armv7l GNU/Linux
3.
tc@box:~$ dmesg | head -5
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Linux version 3.0.42-slitaz (root@slitaz) (gcc version 4.5.1 (Sourcery G++ Lite 2010.09-50) ) #1 PREEMPT Tue Oct 9 19:22:19 UTC 2012
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[ 0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: sun4i
4.
tc@box:~$ ps | tail
738 root /usr/bin/dropbear -b /etc/dropbear/banner -d /etc/dropbear/dropbear_dss_host_key -r /etc/dropbear/dropbear_rss_host_key
747 root /bin/bterm -f /usr/share/fonts/bterm.bogl /sbin/autologin
748 root /sbin/getty 38400 tty2
750 root /sbin/getty 38400 tty3
751 tc -sh
798 root /sbin/udhcpc -b -i eth1 -x hostname box -p /var/run/udhcpc.eth1.pid
1066 root /usr/bin/dropbear -b /etc/dropbear/banner -d /etc/dropbear/dropbear_dss_host_key -r /etc/dropbear/dropbear_rss_host_key
1067 tc -sh
1099 tc ps
1100 tc tail
tc@box:~$
5.
tc@box:~$ cat /var/log/tc-config
Booting Core 4.6.2
Running Linux Kernel 3.0.42-slitaz.
Checking boot options...Done.
Starting udev daemon for hotplug support...Done.
swapon: /dev/zram0: Invalid argument
Scanning hard disk partitions to create /etc/fstab
Setting Language to C Done.
Possible swap partition(s) enabled.
Checking for extensions...Done.
Setting keymap to us Done.
Setting hostname to box Done.
Starting SSH server: Dropbear...
.
mk802 -- tinycore
Towards Microcore on Allwinner A10
a10Core-20120928.img.gz 6.2M
This brings the image up to 4.6.2 base and also changes provides from cgi to zsync'ed local database.
1.
tc@box:~$ cat /etc/init.d/rcS
#!/bin/sh
exec /etc/init.d/tc-config > /var/log/tc-config 2>&1
tc@box:~$ head /etc/init.d/tc-config
#!/bin/sh
# RC Script for Tiny Core Linux
# (c) Robert Shingledecker 2004-2012
# Several modifications for speed by Curaga
. /etc/init.d/tc-functions
USER="tc"
TCEDIR="/tmp/tce"
TCLOOP="/tmp/tcloop"
TCEINSTALLED="/usr/local/tce.installed"
tc@box:~$
2.
tc@box:~$ cat /etc/inittab
# /etc/inittab: init configuration for busybox init.
# Boot-time system configuration/initialization script.
#
::sysinit:/etc/init.d/rcS
# /sbin/getty respawn shell invocations for selected ttys.
tty1::respawn:/sbin/getty -nl /sbin/Autologin 38400 tty1
#tty2::respawn:/sbin/getty 38400 tty2
#tty3::respawn:/sbin/getty 38400 tty3
#tty4::askfirst:/sbin/getty 38400 tty4
#tty5::askfirst:/sbin/getty 38400 tty5
#tty6::askfirst:/sbin/getty 38400 tty6
# Stuff to do when restarting the init
# process, or before rebooting.
::restart:/etc/init.d/rc.shutdown
::restart:/sbin/init
::ctrlaltdel:/sbin/reboot
::shutdown:/etc/init.d/rc.shutdown
3.
tc@box:~$ cat /sbin/Autologin
#!/bin/sh
exec /bin/Bterm /sbin/autologin
tc@box:~$ cat /sbin/autologin
#!/bin/sh
cat /etc/issue
if [ -f /var/log/autologin ] ; then
exec login
else
touch /var/log/autologin
exec login -f root
fi
4.
tc@box:~$ cat /init
#!/bin/sh
mount proc
grep -qw multivt /proc/cmdline && sed -i s/^#tty/tty/ /etc/inittab
if ! grep -qw noembed /proc/cmdline; then
mount / -o remount,size=90%
umount proc
exec /sbin/init
fi
umount proc
if mount -t tmpfs -o size=90% tmpfs /mnt; then
if tar -C / --exclude=mnt -cf - . | tar -C /mnt/ -xf - ; then
mkdir /mnt/mnt
exec /sbin/switch_root mnt /sbin/init
fi
fi
exec /sbin/init
tc@box:~$ ls -l /sbin/init
lrwxrwxrwx 1 root root 14 Oct 8 00:12 /sbin/init -> ../bin/busybox
.
2012-10-14
HowTos
How-Tos & Training Materials
2012-10-03
mk802 -- boot.scr
U-boot for Allwinner explained
The boot.scr file is basically a file consisting of u-boot commands and can be used to change the default parameters.
1.
root@slitaz:/tmp# dd bs=1 skip=72 if=/tmp/boot.scr of=/tmp/boot.script
772+0 records in
772+0 records out
2.
root@slitaz:/tmp# cat boot.script
setenv boot.scr 'if fatload mmc 0 0x44000000 boot.scr || ext2load mmc 0 0x44000000 boot.scr || ext2load mmc 0 0x44000000 boot/boot.scr; then source 0x44000000; fi; true'
setenv boot_mmc 'fatload mmc 0 0x43000000 script.bin; fatload mmc 0 0x48000000 ${kernel}; if fatload mmc 0 0x43100000 uInitrd; then bootm 0x48000000 0x43100000; else bootm 0x48000000; fi'
setenv bootcmd 'run boot.scr setargs boot_mmc'
setenv bootdelay '3'
setenv console 'ttyS0,115200'
setenv extraargs 'rootwait mem=928M'
setenv kernel 'uImage'
setenv loglevel '8'
setenv panicarg 'panic=10'
setenv root '/dev/mmcblk0p2'
setenv setargs 'setenv bootargs console=${console} root=${root} loglevel=${loglevel} ${panicarg} ${extraargs}'
setenv stderr 'serial'
setenv stdin 'serial'
setenv stdout 'serial'
3.
root@slitaz:/tmp# mkimage -A arm -T script -C none -n "Run uImage" -d /tmp/boot.script /tmp/boot.scr
Image Name: Run uImage
Created: Wed Oct 3 23:34:06 2012
Image Type: ARM Linux Script (uncompressed)
Data Size: 780 Bytes = 0.76 kB = 0.00 MB
Load Address: 00000000
Entry Point: 00000000
Contents:
Image 0: 772 Bytes = 0.75 kB = 0.00 MB
.
The boot.scr file is basically a file consisting of u-boot commands and can be used to change the default parameters.
1.
root@slitaz:/tmp# dd bs=1 skip=72 if=/tmp/boot.scr of=/tmp/boot.script
772+0 records in
772+0 records out
2.
root@slitaz:/tmp# cat boot.script
setenv boot.scr 'if fatload mmc 0 0x44000000 boot.scr || ext2load mmc 0 0x44000000 boot.scr || ext2load mmc 0 0x44000000 boot/boot.scr; then source 0x44000000; fi; true'
setenv boot_mmc 'fatload mmc 0 0x43000000 script.bin; fatload mmc 0 0x48000000 ${kernel}; if fatload mmc 0 0x43100000 uInitrd; then bootm 0x48000000 0x43100000; else bootm 0x48000000; fi'
setenv bootcmd 'run boot.scr setargs boot_mmc'
setenv bootdelay '3'
setenv console 'ttyS0,115200'
setenv extraargs 'rootwait mem=928M'
setenv kernel 'uImage'
setenv loglevel '8'
setenv panicarg 'panic=10'
setenv root '/dev/mmcblk0p2'
setenv setargs 'setenv bootargs console=${console} root=${root} loglevel=${loglevel} ${panicarg} ${extraargs}'
setenv stderr 'serial'
setenv stdin 'serial'
setenv stdout 'serial'
3.
root@slitaz:/tmp# mkimage -A arm -T script -C none -n "Run uImage" -d /tmp/boot.script /tmp/boot.scr
Image Name: Run uImage
Created: Wed Oct 3 23:34:06 2012
Image Type: ARM Linux Script (uncompressed)
Data Size: 780 Bytes = 0.76 kB = 0.00 MB
Load Address: 00000000
Entry Point: 00000000
Contents:
Image 0: 772 Bytes = 0.75 kB = 0.00 MB
.
mk802 -- script.bin
Editing AllWinner A10 Board Configuration Files (script.bin)
AllWinner A10 based devices all have board configuration files in binary format, sometimes refereed to as script.bin, evb.bin, sys_config.{product_nane}.bin store in the FAT partition with the kernel.
fexc - (de)compiler
source
binary
bin2fex.tar.gz Size: 18,85 Kb
Crane_Fex_Guide v0.4 (EN).pdf 595K
1.
root@slitaz:/tmp# bin2fex script.bin script.fex
fexc-bin: script.bin: version: 0.1.2
fexc-bin: script.bin: size: 42048 (74 sections)
2.
root@slitaz:/tmp# head script.fex
[product]
version = "1.0"
machine = "MK802"
[target]
boot_clock = 1008
dcdc2_vol = 1400
dcdc3_vol = 1250
ldo2_vol = 3000
ldo3_vol = 2800
3.
root@slitaz:/tmp# ls -l script*
-rwx------ 1 root root 42048 Sep 10 10:55 script.bin
-rw-r--r-- 1 root root 22320 Oct 3 22:16 script.fex
4.
root@slitaz:/tmp# fex2bin script.fex script-2.bin
5.
root@slitaz:/tmp# ls -l script*
-rw-r--r-- 1 root root 42048 Oct 3 22:20 script-2.bin
-rwx------ 1 root root 42048 Sep 10 10:55 script.bin
-rw-r--r-- 1 root root 22320 Oct 3 22:16 script.fex