移植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 ...
随机推荐
- HDU3533(Escape)
不愧是kuangbin的搜索进阶,这题没灵感写起来好心酸 思路是预处理所有炮台射出的子弹,以此构造一个三维图(其中一维是时间) 预处理过程就相当于在图中增加了很多不可到达的墙,然后就是一个简单的bfs ...
- 离散化——化不可能为可能(STL)
所谓离散,就是化连续为不连续,使得我们某种枚举的方法得以实现. 当然,离散还能够帮助我们将某些数据范围很大达到2^16,但是这些数据并不多(例如才1000+),我们可以把数据进行离散,保持他们之间的相 ...
- 《从零开始学Swift》学习笔记(Day 57)——Swift编码规范之注释规范:文件注释、文档注释、代码注释、使用地标注释
原创文章,欢迎转载.转载请注明:关东升的博客 前面说到Swift注释的语法有两种:单行注释(//)和多行注释(/*...*/).这里来介绍一下他们的使用规范. 1.文件注释 文件注释就在每一个文件开头 ...
- Dart基础学习02--变量及内置类型
Dart基础学习02--变量及内置类型 Dart中的变量 首先看一个变量的定义和赋值 var name = 'Bob'; 在Dart中变量名都是引用,这里的name就是一个指向值为Bob的字符串的引用 ...
- svn实现共享文件夹/文件或svn文件夹/文件链接
我们在实际开发过程中,经常会遇到这种情况,多个项目组使用同一公共底层代码:公共底层代码是有专门负责人开发的,其它项目组只是使用即可,那么多个项目组就需要把公共底层代码放到各自的解决方案或目录文件下,解 ...
- Elasticsearch集群 管理
第7章 深入Elasticsearch集群 启动一个Elasticsearch节点时,该节点会开始寻找具有相同集群名字并且可见的主节点.如 果找到主节点,该节点加入一个已经组成了的集群:如果没有找到, ...
- Java 之 Servlet
JavaWeb 三大组件: Servlet, Filter, Listener. Servlet 的作用是处理请求,服务器会把接收到的请求交给 Servlet 来处理.在 Servlet 中通常需要: ...
- QSS类的用法及基本语法介绍
QSS类的用法及基本语法介绍 目录 1. 何为Qt样式表2. 样式表语法基础3. 方箱模型4. 前景与背景5. 创建可缩放样式6. 控制大小7. 处理伪状态8. 使用子部件定义微观样式8.1. 相对定 ...
- centos7在vmware上无法上网
centos7在虚拟机中设置NAT后也无法上网! 首先激活网卡!打开桌面右键在终端中打开:cd /etc/sysconfig/network-scripts/ls 找到以ifcfg开头的,如ifcfg ...
- LinkedList 的get方法分析---java
Java LinkedList.get() 获取元素 Get(int)方法的实现在remove(int)中已经涉及过了.首先判断位置信息是否合法(大于等于0,小于当前LinkedList实例的Si ...