windows平臺(tái)使用wsl為Android編譯lame

lame

lame是非常優(yōu)秀的一種MP3編碼引擎,在業(yè)界,轉(zhuǎn)碼成MP3 格式的音頻文件時(shí),最常用的編碼器就是lame庫(kù)。

wsl

Windows Subsystem for Linux(簡(jiǎn)稱wsl),適用于 Linux 的 Windows 子系統(tǒng)可讓開發(fā)人員按原樣運(yùn)行 GNU/Linux 環(huán)境 - 包括大多數(shù)命令行工具、實(shí)用工具和應(yīng)用程序 - 且不會(huì)產(chǎn)生傳統(tǒng)虛擬機(jī)或雙啟動(dòng)設(shè)置開銷。
安裝可以看windows 10安裝wsl

1. 使用Android Studio下載ndk

下載ndk.png

2. 下載lame

https://sourceforge.net/projects/lame/files/lame/

3. 在lame根目錄下新建一個(gè)shell腳本配置各種變量并編譯

#!/bin/bash
NDK_ROOT=/mnt/f/Android/Sdk/ndk/21.4.7075529
PREBUILT=$NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64
PLATFORM=$NDK_ROOT/platforms/android-30/arch-arm
export PATH=$PATH:PREBUILT/bin:$PLATFORM/usr/include:
export LDFLAGS="-L$PLATFORM/usr/lib -L$PREBUILT/arm-linux-androideabi/lib -march=armv7-a"
export CFLAGS="-I$PLATFORM/usr/include -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -ffast-math -O2"
export CPPFLAGS="$CFLAGS"
export CFLAGS="$CFLAGS"
export CXXFLAGS="$CFLAGS"
export LDFLAGS="$LDFLAGS"
export AS=$PREBUILT/bin/arm-linux-androideabi-as
export LD=$PREBUILT/bin/arm-linux-androideabi-ld
export CXX="$PREBUILT/bin/arm-linux-androideabi-g++ --sysroot=${PLATFORM}"
export CC="$PREBUILT/bin/arm-linux-androideabi-gcc --sysroot=${PLATFORM} -march=armv7-a "
export NM=$PREBUILT/bin/arm-linux-androideabi-nm
export STRIP=$PREBUILT/bin/arm-linux-androideabi-strip
export RANLIB=$PREBUILT/bin/arm-linux-androideabi-ranlib
export AR=$PREBUILT/bin/arm-linux-androideabi-ar
./configure --host=x86_64-linux\
--disable-shared\
--disable-frontend\
--enable-static\
--prefix=/mnt/f/Android/Project/Cproject/lame-3.99.5/armv7a
make clean
make -j8
make install

4. 在armv7a文件下可以看到編譯結(jié)果

lame交叉編譯完成.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容