搞了几天的libmad,终于安装完成了。本来打算利用libmad写一个嵌入式linux的MP3音乐播放器,于是乎去网上看了很多教程和资料,本以为按着上面的方法就可以顺利完成的,但是谁知一下就搞了好几天。细细想来究其原因大概有两个:一个是技术发展太快,很多资料已经过时了;另一个就是网上的资料都是盲目转载大同小异,并没有太多的营养,牵扯到许多细节问题都忽略而过。所以为了给更多的人提供方便,我就写这篇文章,算是一个经验的总结吧。不说废话,开始正题。
!!!文章中的注意事项一定要认真看。!!!
一、下载软件包。网上都可以方便的找到这里就不贴链接了。
zlib-1.2.3.tar.gz
libid3tag-0.15.1b.tar.gz
libmad-0.15.1b.tar.gz
注意:软件版本要与这里写的一致,否则会导致不必要的麻烦,这也是我遇到过的。
二、安装环境以及安装前的准备
gcc 版本5.4.0
arm-linux-gcc 版本4.3.2
Ubuntu 版本16
我的软件压缩包放在/home文件夹里面。
安装位置是:PC下的库:/usr/local/lib/mad_x86,ARM下的库/usr/local/lib/mad_arm,当然其他地方也可以。
所以,先在/usr/local/lib/下创建两个文件夹mad_x86和mad_arm。
注意:安装前,一定要切换到root权限下,不然会有很多麻烦。
ubuntu下切换root的方法自行百度。
三、PC版安装步骤(用于PC-LINUX下应用程序)
1、解压源代码包
# tar -zxvf zlib-1.2.3.tar.gz
# tar -zxvf libid3tag-0.15.1b.tar.gz
# tar -zxvf libmad-0.15.1b.tar.gz
2、编译安装zlib-1.2.3
#cd zlib-1.2.3
# ./configure --prefix=/usr/local/lib/mad_x86
# make
# make install
3、编译安装libid3tag-0.15.1b
# cd libid3tag-0.15.1b
# ./configure--prefix=/opt/madplay/target-arm --disable-debugging --disable-shared --enable-staticCPPFLAGS=-I/usr/local/lib/mad_x86/include LDFLAGS=-L/usr/local/lib/mad_x86/lib
# make
# make install
4、编译安装ibmad-0.15.1b
# cd libmad-0.15.1b
# ./configure --prefix=/usr/local/lib/mad_x86--disable-debugging --disable-shared --enable-static CPPFLAGS=-I/usr/local/lib/mad_x86/includeLDFLAGS=-L/usr/local/lib/mad_x86/lib
# make
# make install
四、ARM版安装步骤(用于ARM-LINUX下应用程序)
注意:这里又些地方与PC下的不同,要注意。
1、解压源代码包
# tar -zxvf zlib-1.2.3.tar.gz
# tar -zxvf libid3tag-0.15.1b.tar.gz
# tar -zxvf libmad-0.15.1b.tar.gz
2、编译安装zlib-1.2.3
#cd zlib-1.2.3
# ./configure --prefix=/usr/local/lib/mad_x86
打开zlib-1.2.3目录下的Makefile文件,按以下内容修改并保存:
CC=arm-linux-gcc
AR=arm-linux-ar
RANLIB=arm-linux-ranlib(如果你使用的不是zlib-1.2.3版本的,这里的设置可能不一样,如zlib-1.2.11。所以建议版本一致)
# make
# make install
3、编译安装libid3tag-0.15.1b
# cd libid3tag-0.15.1b
# ./configure –host=arm-linux --prefix=/opt/madplay/target-arm--disable-debugging --disable-shared --enable-static CPPFLAGS=-I/usr/local/lib/mad_arm/includeLDFLAGS=-L/usr/local/lib/mad_arm/lib
# make
# make install
4、编译安装ibmad-0.15.1b
# cd libmad-0.15.1b
# ./configure--host=arm-linux --prefix=/usr/local/lib/mad_x86 --disable-debugging--disable-shared --enable-static CPPFLAGS=-I/usr/local/lib/mad_arm/includeLDFLAGS=-L/usr/local/lib/mad_arm/lib
# make
# make install