Friday, October 24, 2008

remove files in different directories

I used to know how to find files in different directories,
find . -name '*.raw' will list all the raw files, but how to delete them?

Here is the result:


[root@QSLENG13_FC5 xxx]# find . -name '*.raw' -exec ls {} \;
./SP-MIDI/output_midi.raw
./SMAF_MA-5/output_midi.raw
./SMAF_MA-3/output_midi.raw
./SMAF_MA-2/output_midi.raw
./MXMF/output_midi.raw
./MIDI_RIFF_Format_1/output_midi.raw
./MIDI_RIFF_Format_0/output_midi.raw
./MIDI_Format_1/output_midi.raw
./MIDI_Format_0/output_midi.raw
./KAR/output_midi.raw
./JTS/output_midi.raw
./iMelody/output_midi.raw
[root@QSLENG13_FC5 xxx]# find . -name '*.raw' -exec rm {} \;
[root@QSLENG13_FC5 xxx]# find . -name '*.raw' -exec ls {} \;


Another usage: I want remove GNU assembly code which is generated by ADS and all the other object files.


# find . \( -name '*.o.s' -o -name '*.o' \) -exec rm {} \;


or using "-ok" with control by the user (type 'y' or 'n' for each file).

[root@QSLENG13_FC5 linux]# find . \( -name '*.a' -o -name '*.so' \) -ok rm {} \;
< rm ... ./libmqcore32.a > ? n
< rm ... ./libmqcore32.so > ? n
< rm ... ./libq3di32.so > ? n
< rm ... ./libq3di32.a > ? n

Thursday, October 23, 2008

use of scp

My memory is easy to forget, usually I am using tftp and nfs to share files, but I can not do it through ssh. When one door is close, there is another door open, I can use 'scp' from my Linux PC to transfer files.

Wednesday, October 8, 2008

clone jffs2


mount -t jffs2 /dev/mtdblock4 /mnt/nand
mount /dev/mmcblk0p2 /mnt/mmc2


I use mmc card as the media to save the rootfs at nand flash. It is not as easy as type: "tar czvf /mnt/mmc2/target.tar.gz /mnt/nand/". It won't work within busybox from the ARM target, could be the problem of tar.

How ever here is the magic:

tar cf - -C /mnt/nand . | tar xvf - -C /mnt/mmc2/target


Then pull the SD card and connect to the Linux PC, copy the file system with simply "cp -r /tftpboot /mnt/mmc2/target".

Tuesday, October 7, 2008

tftp on FC5

1. edit tftp file in "/etc/xinetd.d"


service tftp
{
disable = no
socket_type = dgram
protocol = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
# disable = yes
per_source = 11
cps = 100 2
flags = IPv4
}


"/tftpboot" is my directory to be used by tftp. comment out "disable = yes" to enable tftp.

2. restart xinetd service.

$ sudo /sbin/service xinetd restart

Friday, October 3, 2008

compile mplayer with ALSA for ARM

1. download mplayer source code. I am using (MPlay-1.0rc2.tar.bz2)
2. extract it.
3. write a script mybuild.sh for configuring

export CROSS_CC=/opt/CodeSourcery/arm-2007q3-51
export PATH=$CROSS_CC/bin:$PATH
export TGT="your target file system"
./configure --enable-cross-compile -cc=arm-none-linux-gnueabi-gcc \
--host-cc=gcc --target=arm-linux --prefix=$TGT \
--disable-network --disable-x11 --disable-gui \
--with-extralibdir=$TGT/lib \
--with-extraincdir=$TGT/include


Here $TGT contains alsa include files and library "libasound.so.2".

4. type "make"