linux下su的demos编译,安凯3918 操作笔记 --------aimer平台编译 (第一篇)

/etc/profile文件里面添加交叉编译工具链路径:

vim /etc/profile

加上 export PATH=$PATH:/opt/arm-2009q3/bin/  再把之前的交叉编译屏蔽

遇到问题说明请见下面链接:

blog.chinaunix.net/uid-25847519-id-4444238.html

二、内核编译操作:

1、解压 kernel_V1.0.05.tar.gz 内核包

tar -zxf kernel_V1.0.05.tar.gz 得到kernel文件目录

2、编译内核

cd kernel

cp arch/arm/configs/aimer39_ak3918_defconfig .config

make menuconfig

make zImage

或者:

mkdir build-39

cd kernel

make  O=../build-39  aimer39_ak3918_defconfig

make  O=../build-39 menuconfig

make j=4

出现:

LD      vmlinux

SYSMAP  System.map

SYSMAP  .tmp_System.map

OBJCOPY arch/arm/boot/Image

Kernel: arch/arm/boot/Image is ready

AS      arch/arm/boot/compressed/head.o

LZO     arch/arm/boot/compressed/piggy.lzo

/bin/sh: 1: lzop: not found

make[2]: *** [arch/arm/boot/compressed/piggy.lzo] 错误 1

make[1]: *** [arch/arm/boot/compressed/vmlinux] 错误 2

make: *** [zImage] 错误 2

解决:

a、lzo安装

1)、wget

2)、 sudo su

tar xzvf lzo-2.06.tar.gz

3)、cd lzo-2.06

./configure --enable-shared

4)、make

make install

b、lzop安装:

1)、wget ''

2)、tar xzvf lzop-1.03.tar.gz

3)、cd lzop-1.03

./configure

ii)若出现configure: error: cannot compute sizeof (size_t)

See `config.log' for more details

这个问题的原因是linux在查找动态链接库时,忽视了/usr/local/lib中一系列*.so,将其添加到配置文件中,就可以解决。

解决办法(有root权限)

1、打开/etc/ld.so.conf这个配置文件

2、把下面这行内容添加进去

/usr/local/lib

3、保存文件,执行命令:/sbin/ldconfig

(没有root权限)

对于非root用户来说,/etc/ld.so.conf是read-only的,想要解决这个问题也是有办法的。在vim74目录下先执行如下命

令:export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH // 为编译器设定额外的搜索路径,原理基本类似,

修改ld.so.conf的根本原因只是为了让编译器在make过程中去对应的路径下寻找依赖,这里直接指定搜索路径,是一个效果。

接下来, 就正常了

4)、make

make install

三、集成步骤操作如下:

1、tar -zxf rootfs_V1.1.00.tar.gz

2、cp boalib_V1.1.00.tar.gz wifilib_V1.1.00.tar.gz akmedialib_V1.1.00.tar.gz akuiolib_V1.1.00.tar.gz .1.00.tar.gz alsalib_V1.1.00.tar.gz         librootfs/

cd librootfs/

tar -zxf *拷贝过去的压缩包*

3、tar -zxf ipcamera_V1.1.00.tar.gz

cd ipcamera/

make (cp: 无法 stat “akiperflib/*”: 没有该文件或目录   这个提示不要管,是开发人员调试用的)

make install

4、cd demos

tar -zxf recorder_V1.1.00.tar.gz    MediaPlayer_V1.1.00.tar.gz  Audio_Recorder_V1.1.00.tar.gz

修改各个目录下面的Makefile:

LOCAL_C_INCLUDES := ../../librootfs/akmedialib/include/akmedialib \

../../librootfs/alsalib/include

LOCAL_LDFLAGS := -L../../librootfs/akmedialib/usr/lib \

-L../../librootfs/alsalib/usr/lib

改为:

LOCAL_C_INCLUDES := ../../targetfs/librootfs/akmedialib/include/akmedialib \

../../targetfs/librootfs/alsalib/include

LOCAL_LDFLAGS := -L../../targetfs/librootfs/akmedialib/usr/lib \

-L../../targetfs/librootfs/alsalib/usr/lib

分别 make

拷贝各个目录下面生成的执行文件到

cp -fa BUILD_recorder_EXEC/recorder ../../targetfs/ipcamera/rootfs/rootfs/usr/bin/   (recorder只是一个,还有两个目录)

四、生成文件系统:

1、编译与文件系统制作:

到ipcamera目录下面 make reinstall

cd ipcamera

make reinstall

问题1:在制作文件系统时候出现下面问题  (是系统版本过低导致的)

./mkfs.jffs2: /lib/tls/i686/cmov/libc.so.6: version `GLIBC_2.8' not found (required by ./mkfs.jffs2)

解决办法:

我将ubuntu8.04一直更新到ubuntu12.04之后再去编译,就可以成功了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值