博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux中madplay 音乐播放器移植步骤
阅读量:7175 次
发布时间:2019-06-29

本文共 1970 字,大约阅读时间需要 6 分钟。

                                                           madplay 音乐播放器移植步骤
madplay版本:
madplay-0.15.2
交叉编译器版本:
arm-linux-gcc 3.4.1
操作系统平台:
Linux -- Red Hat 9.0
开发板平台:
Arm -- FL2440
准备源码包:
下面给出了两个网站,分别是madplay和zlib库的源码网址
madplay:http://sourceforge.net/projects/mad/files/
zlib库 :http://www.zlib.net/
madplay-0.15.2b.tar.gz libmad-0.15.1b.tar.gz,libid3tag-0.15.1b.tar.gz zlib-1.1.4.tar.gz
建立两个文件夹,一个存放源码,一个存放安装文件
在home下,mkdir两个文件夹:madplay-src madplay
依次解压四个源码包到madplay-src目录下: tar xzvf XXXXXXXXX
1. 编译zlib-1.1.4
首先配置configure 文件
#./configure --prefix=/home/madplay
修改Makefile
CC=arm-linux-gcc
AR=arm-linux-ar rc
RANLIB=arm-linux-ranlib
#make
#make install
2. 编译libid3tag
#./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/madplay 
CPPFLAGS=-I/home/madplay/include LDFLAGS=-L/home/madplay/lib
2
#make
#make install
3. 编译libmad
#./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/madplay 
CPPFLAGS=-I/home/madplay/include LDFLAGS=-L/home/madplay/lib
#make
#make install
4. 编译madplay
#./configure CC=arm-linux-gcc --host=arm-linux --prefix=/home/madplay 
CPPFLAGS=-I/home/madplay/include LDFLAGS=-L/home/madplay/lib
#make
到这就结束了,可以不用make install
在madplay-0.15.2b目录下生成madplay的可执行文件,查看一下需要的动态库
#arm-linux-readelf -d madplay
输出运行时所需的动态库:libmad.so.0, libid3tag.so.0, libm.so.6,libc.so.6
将后两个文件从lib拷贝到根文件系统的/usr/lib目录下(先查看,如果已经有了则不需要),
前两个文件是在/madplay/lib/下生成的,把这两个文件也拷贝到/usr/lib下。
将madplay复制到根文件系统/usr/bin目录下,将一个MP3文件也放在某一目录下,在开发板上执行madplay程序
#madplay XXX.mp3
MPEG Audio Decoder 0.15.2 (beta) - Copyright (C) 2000-2004 Robert Leslie et al.
s3c2410-uda1341-superlp: audio_set_dsp_speed:44100 prescaler:66
Title: XX
Artist: XXX
Album: XXXX
Track: XX
3
Comment: XXXXXXXXX
s3c2410-uda1341-superlp: audio_set_dsp_speed:44100 prescaler:66
如果出现这个信息,应该就没有问题了,可以听歌了。
madplay还有一些快捷键,比如:增大/减小音量(+/-),暂停(b),停止(ESC),其他的操作可以查看madplay的源码。
5. 静态编译
以上是用动态编译的方法,程序运行时需依赖动态库文件。也可以采用静态编译的方法,将静态库编译到程序中,运行时不需要动态库文件
在配置libid3tag,libmad,madplay时,加上参数“--disable-shared --enable-static”即可静态编译madplay

编译完成后只需将madplay复制到根文件系统/usr/bin目录下,不需要复制动态库。

转载地址:http://nmpzm.baihongyu.com/

你可能感兴趣的文章
AIX系统开启ftp服务
查看>>
linux 上拷贝文件到windows 上 文件出现锁的文件
查看>>
Xamarin iOS教程之编辑界面编写代码
查看>>
Construct Binary Tree from Preorder and Inorder Traversal
查看>>
写得好 git 提交信息
查看>>
Linux下获取线程TID的方法
查看>>
Redis和Memcache的区别分析(转)
查看>>
网络请求 http get post 一
查看>>
《计算机问题求解》总结——2014年CCF计算机课程改革导教班(2014.07.11)
查看>>
Google Chrome Plus——绿色便携多功能谷歌浏览器
查看>>
Instant Run
查看>>
浏览器中 for in 反射 对象成员 的差异
查看>>
关于Linux启动时挂载rootfs的几种方式
查看>>
2018年总结
查看>>
34个漂亮的应用程序后台管理界面
查看>>
java JDK6的可变参数
查看>>
初入职场程序员的五大钻石法则
查看>>
Node.js学习笔记(一)概述
查看>>
split的3种方法
查看>>
忽略PNG透明区域的事件(AS/Flash)
查看>>