// 指定 ip 后,再插入网线,就不能自动获取 IP
//压缩文件
//解压到其上级目录
//解压到当前目录
/******************************************************************************
*******************************************************************************
**********/
一些常用指令
1: ifconfig eth0 192.168.168.1
了
2: zip -r 文件名.zip 文件名
3: unzip 文件名.zip 文件名 -d /
4: unzip 文件名.zip 文件名
5: cp -rf * /目录
6:reboot
7: arm-linux-g++(gcc) test.cpp -o test -I/opt/arm/include/SDL -L/opt/arm/lib -lstdc++ -lpthread
-lSDL -lSDL_gfx -lSDL_image
8: rm -rf test
/******************************************************************************
*******************************************************************************
*********/
linux 下应用程序开机启动方法
1:cd /root
2:ls -sail //显示隐藏文件
3:修改.bashrc
//拷贝当前目录下的所有文件到目录下
//重新开机
//交叉编译成板子上的可执行文件
//删除文件夹
vi .bashrc(i 插入)
export DISPLAY=:0 &&app &
4:把应用程序放在/usr/local/bin 下
/******************************************************************************
*******************************************************************************
*********/
修改环境变量
1:cd /etc
2: 修改 profile
vi profile(i 插入)
export DFBARGS=module-dir=/lib/directfb-1.2-0
3:按 esc,:wq 保存
/******************************************************************************
*******************************************************************************
********/
libpng 交叉编译
--target=arm --prefix=/opt/arm1
1 : ./configure
--disable-x11
--enable-debug
--libdir=/opt/arm1/lib
--disable-voodoo --disable-mmx disable-see --enable-sdl --enable-jpeg --disable-zlib --disable-png
--disable-gif --enable-freetype --disable-video4linux --disable-video4linux2 --with-gfxdrivers=none
--with-inputdrivers=none
/******************************************************************************
*******************************************************************************
--include=/opt/arm1/include
--build=i386-linux
--host=arm-linux
--disable-video4linux
--disable-video4linux2
*********/
libz/jpegsrc 交叉编译
1:./configure --host=arm-linux --prefix=/opt/arm1
/******************************************************************************
*******************************************************************************
*********/
directfb 交叉编译
1:./configure --host=arm-linux --prefix=/opt/arm1/ --disable-x11 --enable-debug -disable-voodoo
-disable-mmx --disable-see --enable-sdl --enable-jpeg --disable-zlib --disable-png --disable-gif
--enable-freetype
--with-gfxdrivers=none
--with-inputdrivers=linuxinput
/******************************************************************************
*******************************************************************************
*********/
SDL 交叉编译
./configure
--disable-video-dummy --enable-input-tslib --enable-pulseaudio=no
--build=i386 --enable-video-directfb
/******************************************************************************
*******************************************************************************
*********/
/******************************************************************************
*******************************************************************************
*********/
SDL 鍙婂叾鎵╁睍搴撲氦鍙夌紪璇戠Щ妞嶅埌 arm linux
棣栧厛瑕佸湪/opt 涓嬪缓绔嬫枃浠跺す
mkdir arm
鎺ョ潃灏嗗畨瑁呭寘瑙e帇锛屾瘮濡?home/linux/SDL 涓?
tar -zvxf 鏂囦欢鍚嶏紙 gz 鏂囦欢锛?
/******************************************************************************
********************************************************************/
SDL2-2.0.3 浜ゅ弶缂栬瘧
1:淇 敼/usr/include/limits.h 锛屽湪 SDL_test_fuzzer.h 鍔犲叆锛?
--disable-video-x11
-host=arm-linux
--enable-shared=yes
--prefix=/opt/arm1/
#define ULLONG_MAX 18446744073709551615
#define LLONG_MAX 9223372036854775807
#define LLONG_MIN (-LLONG_MAX - 1)
--prefix=/opt/arm/
--disable-video-ggi
--disable-video-dga
--disable-video-nanox
--disable-video-svga
--disable-arts
2 锛 ?/configure
--disable-video-photon
--disable-video-dummy
--disable-video-x11 --enable-input-tslib --enable-pulseaudio=no --host=arm-linux --build=i386
3 锛歮 ake
4: make install
/******************************************************************************
********************************************************************/
-disable-video-qtopia
--disable-video-aalib
--disable-alsa
--disable-esd
--enable-shared
--prefix=/opt/arm --host=arm-linux--disable-static
SDL2_image-2.0.0 浜ゅ弶缂栬瘧
1 锛 ?/configure
--with-sdl-prefix=/opt/arm CPPFLAGS=-I/opt/arm/include/SDL2 LDFLAGS=-L/opt/arm/lib
2 锛歮 ake
3 锛歮 akeinstall
/******************************************************************************
********************************************************************/
freetype-2.4.8 浜ゅ弶缂栬瘧
1 锛?./configure --prefix=/opt/arm --disable-static --enable-shared --host=arm-linux
2 锛?make
3 锛歮 akeinstall
/******************************************************************************
********************************************************************/
SDL2_ttf-2.0.12 浜ゅ弶缂栬瘧锛堝厛缂栬瘧 freetype-2.4.8 锛?
1 锛?tar zvxfSDL2_ttf-2.0.12.tar.gz
2 锛?cd SDL2_ttf-2.0.12
3 锛氾紙鐜板湪澶ч儴鍒嗛兘涓嶉渶杩欎竴姝ワ紝鍙 洿鎺ヨ繘琛?锛?
#鎵嬪伐淇 敼 Makefile,鍘绘帀 OpenGL 鐩稿叧澶勭悊
# 鍘绘帀 143 琛?-I/usr/include-DHAVE_OPENGL
#159 琛?鏀规垚 GL_LIBS =
# 266 琛?glfont_LDADD = libSDL_ttf.la -lm
#鎵嬪伐淇 敼 glfont.c.鍏ㄩ儴娓呯┖锛屽啓鍏ュ 涓?
#int main(int argc ,char **argv) { return 0;}
./configure--prefix=/opt/arm --disable-static
--enable-shared
--enable-music-mp3-mad-gpl--enable-music-mp3=no
4 锛 ?
--disable-sdltest
--with-sdl-prefix=/opt/arm--with-freetype-prefix=/opt/arm/ CPPFLAGS=-I/opt/arm/include/SDL2
LDFLAGS=-L/opt/arm/lib --host=arm-linux
5 锛歮 ake
6: make install
/******************************************************************************
********************************************************************/
SDL2_mixer-2.0.0 浜ゅ弶缂栬瘧
1:./configure
--host=arm-linux--with-sdl-prefix=/opt/arm
LDFLAGS=-L/opt/arm/lib
2 锛歮 ake
3:make install
/******************************************************************************
********************************************************************/
SDL2_net-2.0.0 浜ゅ弶缂栬瘧
1:
CPPFLAGS=-I/opt/arm/include/SDL2 LDFLAGS=-L/opt/arm/lib
(--with-sdl-prefix=/opt/arm 鍙 互涓嶅姞)
2: make
3: make install
--prefix=/opt/arm
CPPFLAGS=-I/opt/arm/include/SDL2
--host=arm-linux--with-sdl-prefix=/opt/arm
./configure
--prefix=/opt/arm
./configure
--enable-shared
--disable-yasm
--cross-prefix=arm-none-linux-gnueabi-
/******************************************************************************
********************************************************************/
ffmpeg 浜ゅ弶缂栬瘧
1:
--cc=arm-none-linux-gnueabi-gcc
--arch=arm
2: make
3: make install
/******************************************************************************
********************************************************************/
tslib 浜ゅ弶缂栬瘧
1:鍦?tests/ts_calibrate.c 涓 姞鍏 pen 鐨勭 涓変釜鍙傛暟 0777 锛?
if ((calfile = getenv("TSLIB_CALIBFILE")) != NULL) {
--prefix=/usr/local/ffmpeg
--target-os=linux
cal_fd = open (calfile, O_CREAT | O_RDWR, 0777);
} else {
cal_fd = open ("/etc/pointercal", O_CREAT | O_RDWR, 0777);
LDFLAGS=-L/opt/arm1/lib
./configure --prefix=/opt/arm1 --disable-static --enable-shared --with-sdl-prefix=/opt/arm1
--host=arm-linux
}
2: ./autogen.sh
3: ./configure --prefix=/opt/arm1/tslib --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
4: make
5: make install
/******************************************************************************
********************************************************************/
SDL2_gfx-1.0.1 浜ゅ弶缂栬瘧(鍏堝畨瑁卼 slib 锛屽苟灏嗗叾 cp 鍒?opt/arm/lib 涓?
1: ./autogen.sh
2:
CPPFLAGS=-I/opt/arm1/include/SDL2
--enable-mmx=no
3: make
4: make install
/*****************************************************************************/
JAVA/Andriod 程序自启动
二 修改 init.rc
如果 android 采用将 ramdisk.img 编译进内核,那么修改 init.rc 就只能通过重新编译 android
内核的方式了。
方法:将 android kernel top 目录下/arch/arm/boot/ramdisk.img 文件拷贝到某目录下如 tmpdir
1.解压 ramdisk.img
进入 tmpdir,将 ramdisk.img 修改为 ramdisk.img.gz
#mv ramdisk.img ramdisk.img.gz
#gunzip ramdisk.img.gz
#mkdir ramdisk //创建 ramdisk 目录
#cd ramdisk
#cpio -i -F ../ramdisk.img //将 ramdisk.img 解压到当前目录
//进入 ramdisk 目录
这样可以修改 init.rc 文件,修改后保存
2.打包 ramdisk.img
#cpio -i -t -F ../ramdisk.img > list
#cpio -o -H newc -O ../new.img < list
#gzip new.img
//生成 new.img.gz
#mv new.img.gz ramdisk.img //改名为 ramdisk.img
然后重新编译 android kernel, 生成的 boot.img 二进制文件拷贝到原 sdcard 根目录下,更新
boot.img 后,再次启动系统,查看 init.rc 即是已经修改过的了。
另 外 需 要 注 意 : 也 可 以 用 命 令 find . -print |cpio -o
> ../new.img 或 者 cpio -i -t
-F ../ramdisk.img |cpio -o > ../new.img 打包,但是使用这样打包之后更新的 boot.img 系统启动
之后挂掉了。
在用第一种方法打包时文件大小有 636 个 blocks,但是用第二种方法打包的文件是 633 个
blocks,还不知道这两种方式本质的区别。