linux下交叉編譯arm平臺二進制elf文件

交叉編譯還是用linux環境比較好,如果目標是window平臺的VC,用MYSYS比較好,cygwin只是模式linux環境

 

交叉編譯arm平臺二進制文件,尤其是android上可用的二進制文件,最重要的參數是‘-static’ ,然後選擇合適的交叉編譯器,

congfig

make    (漫長的等待)

或者make -j4 開四個線程編譯(可能會出現某些問題)

make install

如果編譯沒有錯誤,就會在prefix指定的目錄中就會生成arm平臺的二進制文件了,

使用file filename 查看文件屬性

#!/bin/sh
./configure --prefix=/home/wangsc/android-ffmpeg \
--cross-prefix=/usr/local/arm/bin/arm-none-linux-gnueabi- \
--target-os=linux \
--arch=arm \
--cpu=armv7-a \
--enable-neon \
--enable-gpl \
--enable-version3 \
--enable-nonfree \
--enable-runtime-cpudetect \
--extra-cflags='-static -fPIC -DANDROID -mfpu=neon -mfloat-abi=softfp -I/usr/local/libvpx/include' \
--extra-ldflags='-static -L/usr/local/libvpx/lib' \
--enable-static \
--enable-shared \
--enable-libvpx \
--enable-ffserver \
--enable-ffmpeg \
--disable-ffprobe \
--disable-doc \
--disable-debug \
--disable-w32threads \

 

 

完後adb push進android設備修改權限755就可以運行了,(注:android中只有/system/bin/ 和/data/目錄下可以執行二進制文件,即elf文件。linux不需要擴展名)

發佈了18 篇原創文章 · 獲贊 4 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章