




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MP3音乐播放器移植 文档编号:MP3_ 文档版本:V1.0 发布日期:2016-06-16目录1 madplay音乐播放器移植11.1 madplay移植环境11.2 准备源码包11.3 搭建madplay11.3.1 构建目录11.3.2 编译zlib-1.1.411.3.3 编译libid3tag21.3.4 编译libmad21.3.5 编译madplay21.3.6 拷贝所需动态库31.3.7 执行madplay程序31 madplay音乐播放器移植1.1 madplay移植环境madplay版本:madplay-0.15.2交叉编译器版本:arm-linux-gcc 4.4.6操作
2、系统平台:Linux Ubuntu12.04开发板平台:三星S5PV2101.2 准备源码包Madplay-0.15.2b.tar.gzlibmad-0.15.1b.tar.gzlibid3tag-0.15.1b.tar.gzzlib-1.1.4.tar.gz1.3 搭建madplay1.3.1 构建目录首先建立一个mp3文件夹,进入到mp3文件夹后再建立两个文件夹,一个存放源码,一个存放安装文件。在home下,mkdir两个文件夹:madplay-src、madplay。依次解压四个源码包到madplay目录下:tar zxvf XXXXXX1.3.2 编译zlib-1.1.4首先配置con
3、figure文件:#./configure -prefix=/home/tarena/mp3/madplay修改MakefileCC=arm-linux-gccLDSHARED=arm-linux-gccCPP=arm-linux-gcc-EAR=arm-linux-ar rcRANLIB=arm-linux-ranlib修改之后编译:#make#make install1.3.3 编译libid3tag#./configure CC=arm-linux-gcc -host=arm-linux -prefix=/home/tarena/mp3/madplay CPPFLAGS= -I/home
4、/tarena/mp3/madplay/include LDFLAGS= -L/home/tarena/mp3/madplay/lib#make#make install注:/usr/local/lib/libz.a: could not read symbols: Bad value/usr/bin/ld: /usr/local/lib/libz.a(crc32.o): relocation R_X86_64_32 against a local symbol can not be used when making a shared object; recompile with -fPIC/
5、usr/local/lib/libz.a: could not read symbols: Bad value一般是64 位 电脑才会出现。解决方法如下:cd zlib-1.2.3 /进入zlib目录# CFLAGS=-O3 -fPIC ./configure -prefix=/usr/local/zlib/# make# make install# make clear1.3.4 编译libmad#./configure CC=arm-linux-gcc -host=arm-linux -prefix=/home/tarena/mp3/madplay CPPFLAGS= -I/home/ta
6、rena/mp3/madplay/include LDFLAGS= -L/home/tarena/mp3/madplay/lib#make注:由于使用的是高版本的arm-linux-gcc 4.4.6编译器,make时出现了”ccl:error:unrecognized command line option “-fforce-mem”错误,这是因为这个高版本的gcc没有”-fforce-mem”参数,解决的办法是在libmad文件中的Makefile里面查找”-fforce-mem”,将其删除即可。再次 #make #make install1.3.5 编译madplay#./configu
7、re CC=arm-linux-gcc -host=arm-linux -prefix=/home/tarena/mp3/madplay CPPFLAGS= -I/home/tarena/mp3/madplay/include LDFLAGS= -L/home/tarena/mp3/madplay/lib#make到这就结束了,可以不用make install。1.3.6 拷贝所需动态库在madplay-0.15.2b目录下生成madplay的可执行文件,查看一下需要的动态库:#arm-linux-readelf -d madplay输出运行时所需的动态库:libmad.so.0、libid3
8、tag.so.0、libm.so.6、libc.so.6、libz.so.1。将后libm.so.6、libc.so.6从/usr/lib拷贝到根文件系统的/usr/lib目录下(先查看,如果已经有了则不需要);libmad.so.0、libid3tag.so.0这两个文件是在/madplay/lib/下生成的,把这两个文件也拷贝到/usr/lib下。最后编译出来的mdaplay 在开发板上运行时出现如下所示的提示:madplay: error while loading shared libraries:libz.so.1: cannot open shared object file:No
9、 such file or directory这是由于libz.so.1库的问题,目前没有发现有什么zlib-1.1.4目录下的libz.so.1编译出错的地方,现在用的是交叉编译器路径下的lib里边的libz.so.1。1.3.7 执行madplay程序将madplay复制到根文件系统/usr/bin目录下,将一个MP3文件也放在某一个目录下,在开发板上执行madplay程序。#madplay XXX.mp3MPEG 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 Comment: XXXXXXXXX s3c2410-uda1341-superlp: audio_set_dsp_speed:44100 prescaler:66 如果出现这个信息,应该就没问题了,可以听歌
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 圆的一般方程(3知识点+7大题型+思维导图+过关检测)-2025年新高二数学暑假专项提升(人教A版)
- 11焊工工艺学第五版教学课件第十一章-其他焊接、切割方法与技术
- 智能硬件产品用户信息安全保护
- 2024-2025学年湖南省岳阳市平江县八年级(下)期末物理试卷(含解析)
- 2025秋初中数学九年级上册人教版教案设计 21.2解一元二次方程-一元二次方程根的判别式2-教案
- 科技管理系统如何借助AI+数智应用实现从“管理”到“服务”的转型升级
- 山东省滨州市无棣县2024-2025学年八年级下学期期中考试物理试卷
- 文言文对比阅读(解析版)-2026年中考语文复习试题
- 微写作20题(满分范文)(二)-2024年新高考语文一轮复习题型专练
- 四川省广安市武胜县2023-2024学年四年级上学期期末考试科学试题
- 医院检验招聘笔试试题及答案
- 污水处理工考试题库与答案(完整版)
- 黄石市西塞山区招聘社区专职工作人员考试真题2024
- 2025至2030全球及中国红外热像技术在建筑物检测中的应用行业项目调研及市场前景预测评估报告
- GB/T 18344-2025汽车维护、检测、诊断技术规范
- 2025年医院电子病历系统在医疗信息化中的应用优化与患者满意度报告
- 连云港市赣榆区社区工作者招聘笔试真题2024
- 2025年江苏高考真题化学试题(原卷版)
- 精神障碍患者的健康教育
- 教育政策与教育制度课件
- DB42T 1198-2016 湖北省空气负氧离子浓度等级
评论
0/150
提交评论