要先下載madplayer的資料
madplay-0.15.2b.tar.gz
libmad-0.15.1b.tar.gz
libid3tag-0.15.1b.tar.gz
網址:
http://sourceforge.net/projects/mad/files/
zlib-1.2.8.tar.gz
網址:
http://sourceforge.net/projects/libpng/files/zlib/1.2.8/zlib-1.2.8.tar.gz/download
1.
先指定路徑:
TOOLCHAINPATH=/opt/buildroot-gcc342/bin/
2.安裝zlib
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure --prefix=$TOOLCHAINPATH
make CC=mipsel-linux-gcc 2>&1 | tee build.log
make install
3.安裝libid3tag
tar zxf libid3tag-0.15.1b.tar.gz
cd libid3tag-0.15.1b
RANLIB=mipsel-linux-ranlib AR=mipsel-linux-ar CC=mipsel-linux-gcc ./configure --prefix=$TOOLCHAINPATH --enable-static --disable-shared --host=mipsel-linux
make 2>&1 | tee build.log
make install
4.安裝libmad
tar zxf libmad-0.15.1b.tar.gz
cd libmad-0.15.1b
RANLIB=mipsel-linux-ranlib AR=mipsel-linux-ar CC=mipsel-linux-gcc ./configure --prefix=$TOOLCHAINPATH --enable-static --disable-shared --host=mipsel-linux
make 2>&1 | tee build.log
make install
5.安裝madplay
tar zxf madplay-0.15.2b.tar.gz
cd madplay-0.15.2b
LIBS="-lm -lz" RANLIB=mipsel-linux-ranlib AR=mipsel-linux-ar CC=mipsel-linux-gcc ./configure --prefix=$TOOLCHAINPATH --enable-static --disable-shared --host=mipsel-linux
make 2>&1 | tee build.log
基本上這樣是沒錯的,但是我安裝到最後會出現問題,不知道為什麼,請待續...
下面是我compiler過的
方法一:
安裝zlib
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8
CC=mipsel-linux-gcc AR="mipsel-linux-ar rc" RANLIB=mipsel-linux-ranlib ./configure --prefix=/opt/buildroot-gcc342/bin/mipsel-linux
export CPPFLAGS='-I../libmad -I../libid3tag'
export LDFLAGS='-L../libmad -L../libid3tag'
安裝libid3tag
./configure --host=mipsel-linux
make
cp .libs/libid3tag.a .
安裝libmad
./configure --host=mipsel-linux
make
cp .libs/libmad.a .
安裝madplay
./configure --host=mipsel-linux
make
我compiler後,會出現這樣的問題
../libtool: line 1644: cd: ../libmad: No such file or directory
libtool: link: cannot determine absolute directory name of `../libmad'
make[2]: *** [libintl.la] Error 1
解決方法:直接指到絕對路徑
修改Makefile
#vi Makefile
CPPFLAGS='-I/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libmad/ -I/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/'
LDFLAGS='-L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libmad/ -L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/'
最後再下:
#./configure --host=mipsel-linux --disable-debugging --disable-shared --enable-static CPPFLAGS='-I/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libmad/ -I/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/' LDFLAGS='-L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libmad/ -L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/.libs'
就過了
之後換make
#make
又會出現error
mipsel-linux-gcc: /root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/.libs/.libs/libid3tag.so: No such file or directory
make[2]: *** [madplay] Error 1
再次修改Makefile
vi Makefile
找到下面那行
LDFLAGS='-L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libmad/ -L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/.libs'
變成
LDFLAGS='-L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libmad/ -L/root/Workspace/SDK4120_Original_DRAM_128MB/source/user/madplay/libid3tag/
之後再make一次
#make
就過了
# file madplay
madplay: ELF 32-bit LSB executable, MIPS, MIPS-II version 1 (SYSV), dynamically linked (uses shared libs), not stripped
就會看到是用MIPS
沒有留言:
張貼留言