我前面在Windows的cygwin中去編譯,那真是各種坑啊,軟鏈接無法識別,x86和86_64的so文件無法編譯出來等等,我折騰了幾天還是沒有在cygwin中完美編譯ijkplayer,今天我用了一下同事的Ubuntu的電腦,變異ijkplayer-android真的是很快,很快的。
下面是官方的提示:
# install homebrew, git, yasm
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install git
brew install yasm
# 需要配置 SDK和NDK路徑
# add these lines to your ~/.bash_profile or ~/.profile
# export ANDROID_SDK=<your sdk path>
# export ANDROID_NDK=<your ndk path>
# Cygwin下需要安裝的軟件
# on Cygwin (unmaintained)
# install git, make, yasm
在ubuntu環境下,進入home/xxx/
xxx代表你的名字,進入目錄後按Ctrl+H就可以看到隱藏的文件,你就可以看到:
.bashrc 文件,這裡可以配置類似windows下的path環境變量,
打開後加上你的ANDROID_NDK和ANDROID_SDK 路徑,我的配置如下:
NDK=/home/hudong/platform-tools/android-ndk-r11b
export NDK
ADB=/home/hudong/Android/Sdk/platform-tools
export ADB
# 我們的ANDROID_NDK和ANDROID_SDK 路徑
ANDROID_NDK=/home/hudong/platform-tools/android-ndk-r11b
export ANDROID_NDK
ANDROID_SDK=/home/hudong/android-sdk
export ANDROID_SDK
# 加入到PATH路徑
PATH=${PATH}:${NDK}:${ADB}:${ANDROID_NDK}:&{ANDROID_SDK}
在編譯之前我們需要安裝一些軟件,make我們就不用安裝了,make是在cygwin下需要安裝的,
至於git我想大家都安裝了吧,要是沒有安裝的話輸入下面的命令就可以安裝git和yasm了:
sudo apt-get update
sudo apt-get install git
sudo apt-get install yasm
# 直接拉取源代碼到本地
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
cd ijkplayer-android
# 檢查更新代碼
git checkout -B latest k0.5.1
# 初始化,會把ffmpeg的代碼拉取到本地等等操作
./init-android.sh
cd android/contrib
./compile-ffmpeg.sh clean
# 編譯ffmpeg軟解碼庫
./compile-ffmpeg.sh all
cd ..
# 會生成各種版本的so文件
./compile-ijk.sh all
執行./compile-ffmpeg.sh all是編譯ffmpeg,需要的時間久一點,只要你的配置和軟件安裝沒有問題你就可以看到:
說明ffmpeg編譯成功了,接下來就是編譯ijkplayer了。
這個不用我說明了吧,跟導入普通的項目是一樣的:
code地址: https://github.com/Dawish/ijkplayer-demo
精簡代碼後的目錄:
更多Ubuntu相關信息見Ubuntu 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=2
更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11