嵌入式播放器移植需要解决两个问题:
a、需要移植哪一个播放器;b、怎么移植该播放器 (那么搜索嵌入式linux播放器in baidu)
先对zlib库进行编译:
在linux下面很多开源的软件第一步要做的事情就是去配置,配置的过程就是通过一些信息告诉它产生Makefile;刚开始是没有一个有效的Makefile的。
配置时需要给出的信息,即库文件安装时需要放在哪儿,即make install时,需要把文件放在什么地方,--prefix就是指定目录存放的位置。
先建立一个目录
接下来是进行配置
配置完成之后,
在进行编译之前,需要把Makefile里面的编译工具修改,针对ARM平台来编译
修改完之后,进行make编译
然后再执行安装make install,
安装在了当前目录下的__install
.a文件是静态库文件,如何把它修改成一个动态库呢,那么就需要在配置的地方去修改
然后重新按照上面的方式去修改Makefile,make,make install。
下面去编译libid3tag库
同样也是先去配置,
配置选项--host=arm-linux:主要有两个作用:a、表明我们编译出来的软件是应用在arm平台;b、后面的arm-linux是一个前缀,后面再跟上gcc等就形成了工具链,就不需要像zlib(不支持--host选项)那样去修改makefile了。
--prefix:是要指明安装的文件存放的目录
配置
编译
安装
make install
结果,同时生成了静态库和动态库
等一下需要使用的是动态库
下面去编译libmad库
先配置
新建一个目录
mkdir __install
再编译
make
然后出错,
进入makefile里面删除该选项如下
最后,安装
make install
最后编译madplay
先建立一个目录
mkdir __install
配置
编译
make
安装
make install
下面把二进制文件madplay复制到开发板,运行之,出错,
原因在于它是动态编译的,需要一些动态链接库,可以在/lib目录下面去看相应的动态链接库
查看madplay需要的动态链接库
下面把之前生成的动态链接库拷贝到开发板的/lib/目录下面去
去查看开发板上面的库
还需要一些库
上面两个库解决了,还需要下面两个库,下面两个库是标准库,数学库,c库,这些库应该从工具链里面来,交叉编译器里面去复制,
最后运行
madplay +文件名.mp3,能运行则成功!!!