使用ndk-r4b編譯x264

來源:互聯網
上載者:User

 

轉載:http://blog.csdn.net/zgyulongfei/article/details/7440254

步驟: 1,將x264壓縮包解壓,假設解壓後的目錄為libx264。

2,在libx264目錄下建立一個指令檔myconfig.sh,然後將裡面的代碼貼到myconfig.sh裡面。

指令碼如下:

# !/bin/sh export ARM_ROOT=/home/frank/android-ndk-r4bexport ARM_INC=$ARM_ROOT/build/platforms/android-8/arch-arm/usr/include/export ARM_LIB=$ARM_ROOT/build/platforms/android-8/arch-arm/usr/lib/export ARM_TOOL=$ARM_ROOT/build/prebuilt/linux-x86/arm-eabi-4.4.0export ARM_LIBO=$ARM_TOOL/lib/gcc/arm-eabi/4.4.0export PATH=$ARM_TOOL/bin:$PATHexport ARM_PRE=arm-eabi ./configure --disable-gpac --extra-cflags=" -I$ARM_INC -fPIC -DANDROID -fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__  -Wno-psabi -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -DANDROID  -Wa,--noexecstack -MMD -MP " --extra-ldflags="-nostdlib -Bdynamic -Wl,--no-undefined -Wl,-z,noexecstack  -Wl,-z,nocopyreloc -Wl,-soname,/system/lib/libz.so -Wl,-rpath-link=$ARM_LIB,-dynamic-linker=/system/bin/linker -L$ARM_LIB -nostdlib $ARM_LIB/crtbegin_dynamic.o $ARM_LIB/crtend_android.o -lc -lm -ldl -lgcc" --cross-prefix=${ARM_PRE}- --disable-asm --host=arm-linux --disable-shared

 

3,將第一句配置 export ARM_ROOT=/home/frank/android-ndk-r4b 改成你ndk-r4b的路徑。

4,開啟終端,並將終端定位到libx264的目錄下,輸入 sudo sh ./myconfig.sh 5,當提示可以運行make的時候,輸入make

6,如果程式可以很正常的編譯,那麼恭喜你,你已經成功了,你可以不用看下面的內容了;如果輸入make之後,看到這些資訊:/bin/sh:arm-eabi-gcc:未找到命令,那麼你和我一樣遇到了這個問題,請繼續看第7步。

7,在終端輸入: sudo gedit /etc/profile ,在開啟的文本中定位到檔案末尾,輸入以下指令碼 #set arm-eabi-gcc environment export ARM_EABI_GCC=/opt/java/ndk/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/bin export PATH=$ARM_EABI_GCC:$PATH 注意:ARM_EABI_GCC中的/opt/java/ndk/android-ndk-r4b是我ndk-r4b的路徑,你要根據自己ndk路徑修改! 儲存後關閉文本。這一步的目的是為arm-eabi-gcc添加環境變數。

8,上一步修改的配置需要重啟電腦才會生效,為了能夠使其立即生效,需要在終端輸入:source /etc/profile,接著輸入:echo $PATH 查看ARM_EABI_GCC的路徑是否有在輸出的內容中,如果有,則看第9步,否則認真檢查,重新設定一下環境變數。

9,環境變數配置好了之後,輸入命令:make,如果不再提示說arm-eabi-gcc未找到命令而且看到程式正在編譯,那麼恭喜你,你將成功編譯libx264.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.