S3C2440移植alsa-lib

http://ackerman.iteye.com/blog/828912

文章分类:大众硬件

---------------------------------------------------------------------------------------------------------------------------------

目标版:TQ2440,天嵌s3c2440开发板

目标版系统:Linux2.6.30.4,已经整合了alsa驱动。

交叉编译器版本:arm-linux-gcc 4.3.3

开发平台:ubuntu10.04

alsa-lib版本:1.0.22

---------------------------------------------------------------------------------------------------------------------------------

准备工作:

(1)下载alsa-lib和alsa-utils

http://www.alsa-project.org/main/index.php/Download

(2)建立相关目录

---------alsa

                |-------libs (存放源码)

                |-------output (输出文件)

                               |----------arm-linux

---------------------------------------------------------------------------------------------------------------------------------

编译alsa-lib

(1)解压alsa-lib-1.0.22.tar.bz2

(2)进入alsa-lib-1.0.22目录

Shell代码
  1. ./configure --host=arm-linux --prefix=$PWD/../../output/arm-linux --enable-static --enable-shared  --disable-python --with-configdir=/usr/local/share --with-plugindir=/usr/local/lib/alsa_lib  
./configure --host=arm-linux --prefix=$PWD/../../output/arm-linux --enable-static --enable-shared  --disable-python --with-configdir=/usr/local/share --with-plugindir=/usr/local/lib/alsa_lib

(3)make

(4)make install

----------------------------------------------------------------------------------------------------------------------------------

编译alsa-utils

(1)同上

Shell代码
  1. ./configure --host=arm-linux --prefix=$PWD/../../output/arm-linux --enable-static --enable-shared --with-configdir=/usr/local/share  CFLAGS="-I$PWD/../../output/arm-linux/include" LDFLAGS="-L$PWD/../../output/arm-linux/lib -lasound "  --disable-alsamixer --disable-xmlto  
./configure --host=arm-linux --prefix=$PWD/../../output/arm-linux --enable-static --enable-shared --with-configdir=/usr/local/share  CFLAGS="-I$PWD/../../output/arm-linux/include" LDFLAGS="-L$PWD/../../output/arm-linux/lib -lasound "  --disable-alsamixer --disable-xmlto

(2)make

(3)make install

------------------------------------------------------------------------------------------------------------------------------------

将库和可执行文件拷贝到开发板上:

(1)将/output/arm-linux/lib下libiconv.so.2.5.0,libasound.so.2.0.0及其软链接拷贝到目标版上的/lib目录下。将/usr/local/share目录下的文件拷贝到目标板上同样的目录下。

(2)拷贝/output/arm-linux/bin/目录下的aplay到目标版上,同时可以拷贝一个wav测试文件/output/arm-linux/share/sounds/alsa/Front_Center.wav到目标板。

(3)在目标板上,ls -l /dev/snd 看看系统是否已经有了设备节点,如果没有,手动建立。

Shell代码
  1. mkdir /dev/snd   
  2. mknod /dev/snd/controlC0 c 116 0  
  3. mknod /dev/snd/hwC0D0 c 116 4  
  4. mknod /dev/snd/pcmC0D0c c 116 24  
  5. mknod /dev/snd/pcmC0D0p c 116 16  
  6. mknod /dev/snd/seq c 116 1  
  7. mknod /dev/snd/timer c 116 33  
mkdir /dev/snd
mknod /dev/snd/controlC0 c 116 0
mknod /dev/snd/hwC0D0 c 116 4
mknod /dev/snd/pcmC0D0c c 116 24
mknod /dev/snd/pcmC0D0p c 116 16
mknod /dev/snd/seq c 116 1
mknod /dev/snd/timer c 116 33

 在TQ2440板子上,只需建立pcmC0D0c,pcmC0D0p,timer三个节点即可。

(4)播放声音文件

./aplay Front_Center.wav

------------------------------------------------------------------------------------------------------------------------------------

参考文章

http://cgy136652.blog.163.com/blog/static/36168728201027105324523/

http://blog.csdn.net/reille/archive/2010/08/28/5845913.aspx

http://blog.chinaunix.net/u3/114374/showart_2278278.html

 

 

------------------------------------------------------------------------------------------------------------------------------------

    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值