madplay編譯移植個人記錄

2021-05-25 05:47:23 字數 2099 閱讀 1208

x86機器

pc端編譯

madplay

(直接用

gcc,執行於開發板的要用

arm-linux-gcc)

mkdir madplay

將檔案解壓到

madplay中

先安裝zlib-1.1.4

mkdir target

libid3tag

要用到zlib

生成的庫

cd src/zlib-1.1.4

./configure –prefix=target

makefile

中的cc=arm-linux-gcc//

這一步跳過

make &&make install

cd ../libid3tag-0.15.1b

./configure-host=arm-linux–prefix=/1234/target/cc=arm-linux-gcc

這兩句不寫

ppflag=-i/1234/target/includedflag=-l/1234/target/lib

make &&make install

cd ../libmad-0.15.1b

./configure--host=arm-linux–prefix=/1234/target/cc=arm-linux-gcc//

這兩句不寫

make && makeinstall

cd../madplay-0.15.2b

./configure--host=arm-linux–prefix=/1234/target/cc=arm-linux-gcccppflags=-i/1234/target/includeldflags=-l/1234/target/lib

make &&ake install

中間有一步編譯出錯,提示

makefile

裡面 --fforce-mem

,遇到的時候,用

vim開啟

makefile

,找到它,把它刪除掉再次執行就可

成功了,但是在

pc端虛擬機器裡面不能執行的,缺少

/dev/dsp

另:若是在ubuntu/linux實體機上執行madplay,遇到提示audio: /dev/dsp: no such file or directory時,解決辦法如下:

安裝軟體:pulseaudio-utils

然後重新在終端內執行:

$padsp    ./madplay    test.***   即可聽到**

pc端成功了

,arm

板的還會遠嗎?

那麼接下來:

mkdir target-arm

步驟和上面的差不多、、、、、

每條命令加上上面的粗斜體字

注意看上面的路徑裡面寫著

1234

,這裡是我故意這麼寫的,目的是提醒你這裡都要用絕對路徑最好

正確編譯成

arm-linux

版本的以後: 將

target-arm/bin/madplay

拷到開發板 將

libmad.so.0

和libid3tag.so.0

拷到開發板

/lib下

madplay

需要的這兩個庫,在

target-arm/lib/

下。它們是鏈結檔案,所以

copy

的是鏈結的檔案,應該

copy

下面四個庫檔案:

libid3tag.so.0

、libid3tag.so.0.3.0

、libmad.so.0

、libmad.so.0.2.1

放在/usr/lib目錄

原因見下圖:

madplay移植 交叉編譯

移植madplay 需要如下檔案 madplay 0.15.2b.tar.gz libmad 0.15.1b.tar.gz libid3tag 0.15.1b.tar.gz 和zlib 1.2.3.tar.gz。zlib 1.1.4.tar.gz zlib 1.2.3.tar.gz類似 1 配置編譯...

原 移植madplay到arm linux

移植 madplay 需要如下檔案 madplay 0.15.2b.tar.gz,libmad 0.15.1b.tar.gz,libid3tag 0.15.1b.tar.gz 和 編譯方法如下 zlib configure prefix home madplay allokhere 修改makefi...

Madplay移植到mini2440全過程詳解

madplay交叉編譯 交叉編譯器 arm linux gcc 3.4.1 pc環境 ubuntu 8.10 注意 最好在root許可權下執行以下移植,否則在make install時可能許可權不夠。一 移植madplay前的準備 madplay的移植需要以下的幾個包 libid3tag 0.15....