第五部分
前段時間,在Ubuntu上面搭建起來了能支援HLS的串流伺服器,最終目標是在arm的開發板上搭建這樣的串流伺服器。現在工作只是做了一小部分,正在進行移植,記錄下來,方便以後繼續幹。
1、首先是要移植nginx到arm的開發板上面。
這個其實有人已經做過了,可以使用別人的工程。
https://bitbucket.org/ntakimura/android-nginx/src/c80cb9c41a725ecf57f73a196735100aeef5b6e4/?at=android
這是
2、下載了原碼之後,按照上面的步驟進行:
首先,確定有NDK環境,要呼叫NDK的工具鏈。
android ndk 提供腳本,允許自己定制一套工具鏈,方法是:
$NDK_HOME/build/tools/make-standalone-toolchain.sh \ --platform=android-14 --install-dir=$HOME/local/android-toolchain其中NDK_HOME就是你的NDK路徑。
3、按照它的第二步,專案官網上寫的是:
auto/configure \ --crossbuild=android-arm \ --prefix=/sdcard/nginx \ --with-cc=$HOME/local/android-toolchain/arm-linux-androideabi/bin/gcc \ --without-pcre --without-http_rewrite_module --without-http_userid_module \ --with-cc-opt=-Wno-sign-compare但是,當進入到auto的上一目錄下執行時,會提示錯誤,找不到gcc,所以要修改下命令:
auto/configure \ --crossbuild=android-arm \ --prefix=/home/wangrui/arm-nginx \ --with-cc=/home/wangrui/local/android-toolchain/bin/arm-linux-androideabi-gcc \ --without-pcre --without-http_rewrite_module --without-http_userid_module \ --with-cc-opt=-Wno-sign-compare因為以後的make和make install要在root下,所以將指令中HOME改成了我的目錄/home/wangrui/
4、不出錯的話,能順利完成,然後make,make install
5、將arm-nginx拷貝到android SDCARD中。
在拷貝時,會有權限問題,不能拷貝,修改arm-nginx資料夾權限:
chmod 777 arm-nginx -R-R表示資料夾下的子資料夾和檔案也一併修改。
6、將手機使用數據線連接,打開USB調式,安裝adb工具
sudo apt-get install android-tools-adb
執行指令:
adb shell會進入到手機當中,執行指令:
cd sdcard進入到sd卡中,找到arm-nginx目錄
8、完整指令是:
cd sdcard/arm-nginx/sbin/
./nginx提示錯誤:
nginx: [alert] could not open error log file: open() "/home/wangrui/arm-nginx/logs/error.log" failed (2: No such file or directory) 2015/02/12 16:16:26 [emerg] 4079#0: open() "/home/wangrui/arm-nginx/conf/nginx.conf" failed (2: No such file or directory)找不到文件,修改指令:
./nginx -p /sdcard/arm-nginx/ -c /sdcard/arm-nginx/conf/nginx.conf執行提示錯誤:
nginx: [emerg] getgrnam("nogroup") failed (2: No such file or directory)現在還不知道該如何修改,今天先記錄到這裡,由於快放年假,便於後來繼續,一步步來……
遇到過這種情況的前輩清不吝賜教阿!
多謝了
以上就介紹了使用nginx+nginx-rtmp-module+ffmpeg搭建串流媒體伺服器筆記(五),包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。