반응형

#

mkdir /working

cd /working

mkdir madplay

cd madplay

현재 디렉토리는 /working/madplay .



ftp://220.68.69.235/mp3.zip 에서 파일을 /working/madplay 디렉토리에 다운.


압축파일에는

1. madplay-0.15.2b.tar.gz
2. libmad-0.15.1b.tar.gz
3. libid3tag-0.15.1b.tar.gz
4. zlib-1.2.2.tar.gz
5. 구동해볼 예제 mp3 파일

이렇게 5가지 파일이 있습니다.


압축 풉니다.

tar zxvf madplay-0.15.2b.tar.gz
tar zxvf libmad-0.15.1b.tar.gz
tar zxvf libid3tag-0.15.1b.tar.gz
tar zxvf zlib-1.2.2.tar.gz


필요한 변수 설정

export CC=arm-linux-gcc

export CXX=arm-linux-gcc

export CPPFLAGS='-I../libmad-0.15.1b -I../libid3tag-0.15.1b -I../zlib-1.2.2' 

-I (대문자 i 옵션)

export LDFLAGS='-L../libmad-0.15.1b -L../libid3tag-0.15.1b -L../zlib-1.2.2'



컴파일한 라이브러리와 바이너리를 저장할 디렉터리 생성

mkdir -p /working/madplay/lib

mkdir -p /working/madplay/bin

cd /working/madplay


패키지를 크로스 컴파일

cd zlib-1.2.2

./configure

make

cd ..


cd libid3tag-0.15.1b

./configure --host=arm-linux

make

cp .libs/libid3tag.a ./

cd ..


cd libmad-0.15.1b

./configure --host=arm-linux

make

cp .libs/libmad.a ./

cd ..


cd madplay-0.15.2b

./configure --host=arm-linux

make

file madplay

madplay 관련 메시지 나오면 정상!

cp madplay ../bin


# 타깃 보드의 램 디스크에 들어갈 madplay의 라이브러리를 미리 만들어 놓은 lib 디렉토리로 복사한다.

cd ..

cd libid3tag-0.15.1b/.libs

cp -dpR libid3tag.so* /working/madplay/lib

cd ../../

cd libmad-0.15.1b/.libs

cp -dpR libmad.so* /working/madplay/lib

cd ../../


크로스 컴파일된 라이브러리와 실행 파일이 들어 있는 bin과 lib 데릭터리의 내용을 타깃 보드의 램디스크 상의 /usr/bin과 /lib

디렉터리에 복사해 넣는데, 이때 속성 유지해야하므로 cp -dpR 옵션사용하여 복사


[root SM#] madplay iwill.mp3

실행, 음악감상~


반응형

'Embeded' 카테고리의 다른 글

IrDA 적외선 통신 | ARM+LINUX  (0) 2008.01.10
임베디드 수업  (0) 2008.01.07
rs-232이란 알기쉽게요 답변 부탁  (0) 2008.01.07
Posted by Real_G