移植madplay到jz2440【学习笔记】
平台:jz2440
作者:庄泽彬(欢迎转载,请注明作者)
说明:韦东山一期视频学习笔记
交叉编译工具:arm-linux-gcc (GCC) 3.4.5
PC环境:ubuntu16.04
一、移植madplay到jz2440需要的安装包:
libid3tag-0.15.1b.tar.gz libmad-0.15.1b.tar.gz madplay-0.15.2b.tar.gz zlib-1.2.3.tar.gz

二、解压相关的安装包
先看我们的工作目录下面现在有什么文件:
*tar.gz文件是我们制作madplay播放器需要的安装包
src-code 目录是用来存放我们解压压缩文件的目录,temp目录用来存放arm版本的安装目录

解压相关文件
tar -xvf libid3tag-0.15.1b.tar.gz -C src-code/
tar -xvf libid3tag-0.15.1b.tar.gz -C src-code/
tar -xvf madplay-0.15.2b.tar.gz -C src-code/
tar -xvf zlib-1.2.3.tar.gz -C src-code/
查看解压情况:

三、编译madplay以及依赖的库文件
设置交叉工具链为arm-linux-gcc
export CC=arm-linux-gcc
3.1编译zlib-1.2.3库
cd src-code/zlib-1.2.3/
./configure --prefix=/home/zhuang/work/project/6-jz2440/systems/madplay/temp
make
make install
3.2编译libid3tag-0.15.1b库文件
./configure --host=arm-linux --prefix=/home/zhuang/work/project/6-jz2440/systems/madplay/temp/ --disable-debugging --disable-shared --enable-static CPPFLAGS=-I/home/zhuang/work/project/6-jz2440/systems/madplay/temp/include LDFLAGS=-L/home/zhuang/work/project/6-jz2440/systems/madplay/temp/lib
make
make install
3.3.编译libmad-0.15.1b库文件
./configure --host=arm-linux --prefix=/home/zhuang/work/project/6-jz2440/systems/madplay/temp/ --disable-debugging --disable-shared --enable-static CPPFLAGS=-I/home/zhuang/work/project/6-jz2440/systems/madplay/temp/include LDFLAGS=-L/home/zhuang/work/project/6-jz2440/systems/madplay/temp/lib
make
make install
3.4编译madplay-0.15.2b库文件
./configure --host=arm-linux --prefix=/home/zhuang/work/project/6-jz2440/systems/madplay/temp/ --disable-debugging --disable-shared --enable-static CPPFLAGS=-I/home/zhuang/work/project/6-jz2440/systems/madplay/temp/include LDFLAGS=-L/home/zhuang/work/project/6-jz2440/systems/madplay/temp/lib
make
make install
四、运行madplay播放器
cd temp/bin
cp madplay /work/nfs_root/first_fs/bin/ 网络文件系统
进入到开发板的串口运行:
madplay 1.mp3 //1.mp是音乐文件
这里展示不了音乐查看相关的log,播放成功,可以洗洗就睡了,

移植madplay到jz2440【学习笔记】的更多相关文章
- JZ2440学习笔记之通过J-Link单步裸机程序(Keil+J-Link)
我们还是使用JZ2440学习笔记之第一个裸机程序(Keil-MDK)里面的程序,但是把延时拿掉,要不然单步的时候一直在delay里面: int main(void) { // Set GPF4/5/6 ...
- jz2440移植QT5.6【学习笔记】【原创】
平台:jz2440 作者:庄泽彬(欢迎转载,请注明作者) 交叉编译工具:arm-linux-gcc (GCC)4.4.3 linux:linu3.4.2 PC环境:ubuntu18.04 一.修改/o ...
- JZ2440学习笔记之第一个裸机程序(Keil-MDK)
CPU:S3C2440, ARM920T, Internal 4KB RAM, Support boot from NAND flash, 128MB for each bank. JZ2440:Me ...
- JZ2440学习笔记之中断
.extern main .text .global _start _start: @********************************************************* ...
- JZ2440学习笔记之内存设备
通过OM[1:0]选择启动的设备: OM[1:0]=00,地址0对应的是Internal 4K RAM,且Nand的前4K会被复制到这里,得到执行: OM[1:0]=01,地址0对应的是Nor Fla ...
- JZ2440学习笔记之链接文件lds
如果在Linux环境下用arm-linux-gcc来编译arm程序,需要编写链接文件lds: 1. 运行地址=链接地址,表示代码在SDRAM中执行的地址,如果程序中有对某部分代码执行过搬运,需要在ld ...
- JZ2440学习笔记之IIS音频芯片WM8976
音频芯片的接线图:IIS接到MPU的IIS controller上:看L3总线的接法,应该是使用GPIO来模拟时序. IIS总线用来传输音频数据. L3总线用来配置WM8976的内部寄存器. L3总线 ...
- jz2440-linux3.4.2-kernel移植【学习笔记】【原创】
平台:jz2440 作者:庄泽彬(欢迎转载,请注明作者) 说明:韦东山二期视频学习笔记 交叉编译工具:arm-linux-gcc (GCC)4.3.2 linux:linu3.4.2 PC环境:ubu ...
- jz2440-uboot-201204版本移植【学习笔记】【原创】
平台:jz2440 作者:庄泽彬(欢迎转载,请注明作者) 说明:韦东山二期视频学习笔记 交叉编译工具:arm-linux-gcc (GCC)4.3.2 PC环境:ubuntu18.04 一.uboot ...
随机推荐
- Unittest框架概念
1.测试脚手架(test fixture): 测试准备前要做的工作和测试执行完后要做的工作(包括setUp()和tearDown()) 2.测试用例(test case): 最小的测试单元 3.测试套 ...
- 使用phpnow本地搭建Discuz!如何实现伪静态
用phpnow本地搭建Discuz!如何实现伪静态 因为phpnow本身就支持伪静态,那只要看下相关的设置是否正确,写个.htaccess的文件就可以了. 一.确认httpd.conf的设置 在xxx ...
- cygwin下编译zlib源代码
本文介绍在cygwin下编译zlib源代码的方法步骤,这个过程尽管简单,但还是有一些须要注意的地方. zlib源代码下载地址: http://www.zlib.net/ 下载后.解压就会生成zlib- ...
- iOS开发之--制作属于自己的frameWork
开发的时候,有时候,我们会遇到协同开发,在协同开发的时候,每个开发者都会创建自己的工具类,还有就是当一个项目需要嵌套到另一个项目里面,这些时候,如果能把所需的部分打包成framework,会方便很多, ...
- 移动端web页面上滑加载更多功能
背景介绍: 开发企业微信的一个应用,实现在企业微信中调用自己程序页面,页面加载多模块数据,向下滑加载更多,等等等等,一波三折 然后很早就成功了是这样实现的: html: <div id=&quo ...
- 《JAVA多线程编程核心技术》 笔记:第六章:单例模式与多线程
一.立即加载/"饿汉模式"和延迟加载/"懒汉模式" 立即加载(又称饿汉模式):在使用类的时候已经将对象创建完毕,常见实现方法是直接new实例化 延迟加载(又称懒 ...
- CodeForces 667A Pouring Rain
A. Pouring Rain time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- StackExchange.Redis性能调优
大家经常出现同步调用Redis超时的问题,但改成异步之后发现错误非常少了,但却可能通过前后记日志之类的发现Redis命令非常慢. PS: 以后代码都在Windows bash中运行,StackExch ...
- 巨蟒python全栈开发-第7天 基本数据类型补充&深浅拷贝
1.基本数据类型补充 2.深浅拷贝 DAY7-基本数据类型(基本数据类型补充&深浅拷贝) 本节主要内容: 1.补充基础数据类型 (1)join方法 (2)split方法 (3)列表不能在循环时 ...
- 解决:IDEA unable to import maven project see logs for details问题+java http请求报java.net.SocketException: Permission denied:connect 问题
背景:用IDEA写了一个java发送http请求的maven项目. 运行时,项目报java.net.SocketException: Permission denied:connect问题: 修改po ...