CentOS 6 ZLMediaKit のコンパイルとインストール分析

CentOS 6 ZLMediaKit のコンパイルとインストール分析

Centos6にZLMediaKitをインストールする

ZLMediaKit の作者は Ubuntu 16 を使って開発しましたが、テストや本番で動かす場合は Centos に導入する必要があります。作者は主に Centos6 を使っています (Centos7 も以下の rpm パッケージ以外はコンパイルコンポーネントの動作は同じです)。要望があったのでインストールして共有します。

1. 基本的なコンパイル環境をインストールする

1.1 gcc-5.4のインストール

注: centos6 のデフォルトの gcc バージョンは gcc-4.4 であり、これを gcc-5.4 にアップグレードする必要があります。c11 をサポートするには gcc-4.7 以上にアップグレードする必要があると記載されているオンライン バージョンは誤りです。実際のテストでは、gcc-4.8 は関連する基本構成フレームワークを正常に cmake できません。

http://mirrors.nju.edu.cn/gnu/gcc/gcc-5.4.0/gcc-5.4.0.tar.gz を取得します。
tar -zxvf gcc-5.4.0.tar.gz
gcc-5.4.0 をインストールしてください
./contrib/ダウンロードの前提条件
CD ..
gcc-build-5.4.0 をディレクトリに追加します。
gcc-build-5.4.0 をCDに追加します
../gcc-5.4.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
作成 && インストール

(私の仮想マシンはデュアルコアプロセッサと 2.5G メモリを搭載しており、1 時間かかります。もっと早く知っていたら、もっと多くのコアを構成していたでしょう... 死ぬまで待っていたでしょう)

gcc -v この時点で、システムのgccは自動的にgcc-5.4バージョンになります。

1.2 cmake-3.10 のインストール

他のバージョンの cmake3 がインストールできるかどうかはまだテストしていません。現在使用されている 3.10 は、作者のバージョンと一致しています。

tar -zxvf cmake-3.10.0-rc4.tar.gz
cmake-3.10.0 をインストールします
 ./ブートストラップ
gmake && gmake インストール
yum 削除 cmake
ln -s /usr/local/bin/cmake /usr/bin/cmake
ln -s /usr/local/bin/cpack /usr/bin/cpack
ln -s /usr/local/bin/ctest /usr/bin/ctest
#または環境変数をエクスポート PATH=$PATH:/usr/local/bin と記述します
#/etc/profileで設定した後、ソースは

確認する:

# cmake --version
cmake バージョン 3.10.0-rc4

2. ZLMediaKitをコンパイルする

2.1 コードをダウンロードする

git clone --depth=1 https://github.com/xiongziliang/ZLMediaKit.git
cd ZLメディアキット
git サブモジュールの初期化
git サブモジュールの更新

2.2 インストールの依存関係

yum インストール mysql-devel.x86_64 openssl-devel ffmpeg ffmpeg-devel

他の 3 つの rpm パッケージもインストールする必要があります。リンクは次のとおりです。

libx264-devel (https://pkgs.org/download/libx264)
http://pkgrepo.linuxtech.net/el6/release/x86_64/libx264-devel-0.130-0.20130531.1.el6.x86_64.rpm で実行します。
libfaac-devel (https://pkgs.org/download/libfaac)
http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/RPMS.classic//libfaac-devel-1.28-alt2.x86_64.rpm で実行します。
libmp4v2-dev (https://pkgs.org/download/libmp4v2)
https://download-ib01.fedoraproject.org/pub/epel/6/x86_64/Packages/l/libmp4v2-1.5.0.1-10.el6.x86_64.rpm を実行します。

2.3 コンパイル

# linux_buildディレクトリに移動します
# ln -s linux_build/ビルド
# cd ビルド
# cmake ..
-- Cコンパイラの識別はGNU 5.4.0です
...
-- 設定完了
-- 生成完了
-- ビルドファイルは /usr/local/src/install_pack/ZLMediaKit/build に書き込まれました
# 作る

コンパイルされた実行ファイルはZLMediaKit/git/ZLMediaKit/build/binにあります。

3. コンパイルされたZLMediaKitを実行する

cd ZLMediaKit/git/ZLMediaKit/ビルド
./bin/メディアサーバー

# netstat -antlp | grep ./MediaServer
tcp 0 0 0.0.0.0:555 0.0.0.0:* LISTEN 26771/./MediaServer 
tcp 0 0 0.0.0.0:1936 0.0.0.0:* LISTEN 26771/./MediaServer 
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 26771/./MediaServer 
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 26771/./MediaServer 
tcp 0 0 0.0.0.0:322 0.0.0.0:* LISTEN 26771/./MediaServer 
tcp 0 0 0.0.0.0:9000 0.0.0.0:* LISTEN 26771/./MediaServer

ポートを変更する場合は、コンパイルする前に、ZLMediaKit/git/ZLMediaKit/server/main.cppを探してください。

名前空間 mediakit の下にある各サーバーのポート番号を変更します {

要約する

以上が編集者による Centos6 コンパイルと ZLMediaKit 分析のインストールの紹介です。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、編集者がすぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Centos7ソースコードのコンパイルとphp7.2本番のインストールの詳細な説明
  • Centos7.2 のコンパイルと PHP7.0.2 のインストール手順
  • CentOS 7 で Nginx 1.11.10 をコンパイルしてインストールするチュートリアル
  • Centos7 で Nginx+PHP+MySql 環境をコンパイル、インストール、構成する
  • CentOS MySQL 5.7 のコンパイルとインストールの詳細な手順

<<:  Linux で特定のプログラムを見つけるための whereis の例の詳細な説明

>>:  Vue ローカルコンポーネントデータ共有 Vue.observable() の使用

推薦する

Nginx セッション共有問題の解決策の分析

この記事は主に、Nginx セッション共有の問題に対する解決策を紹介します。記事内のサンプル コード...

JavaScriptは組み込みオブジェクトのプロトタイプメソッド実装を追加します

オブジェクトがメソッドを呼び出す順序:インスタンス内にメソッドが存在しない場合は、インスタンス オブ...

アバターと国旗の統合を実現する1行のCSSコード

今日は建国記念日で、誰もが祖国の誕生日をお祝いしようとしています。毎年この時期になると、WeChat...

Linuxで現在のスクリプトの実際のパスを取得する方法

1. 現在のスクリプトの実際のパスを取得します。 #!/bin/bash if [[ $0 =~ ^...

HTML タグのカスタム属性に関する質問

以前の開発では、クラス、名前などの HTML のデフォルト属性を使用していました。 Huawei社の...

VueとFlask間の通信の実装

axiosをインストールして通信を実装するここでは、axios を使用して Vue フロントエンドと...

独自のサーバーを素早く構築する方法の詳細なチュートリアル(Java 環境)

1. サーバーの購入1. 私はAlibaba Cloudのサーバーを選択しました。学生向けで月額9...

::before/:before と ::after/:after の使用に関する深い理解

パート1: 基礎1. :active や :hover などの疑似クラスとは異なり、これらはすべて疑...

仮想マシンUbuntu 16.04がインターネットに接続できない問題の解決策

Ubuntu をインストールしたばかりですが、開いたときにネットワーク接続がありませんでした。右上隅...

同じページを動的にロードするための Vue ルーティングリスニングの例

目次シナリオ分析発達要約するシナリオ分析システムでは、1 つのモジュールに 3 つのサブモジュールが...

Linux 仮想メモリ設定のチュートリアルと実践

仮想メモリとは何ですか?まずはWikipediaからの紹介文をそのまま引用します。仮想メモリは、コン...

MySQL データベースの最適化に関する 9 つのヒント

目次1. 最も適切なフィールド属性を選択する2. フィールドをNOT NULLに設定してみる3. サ...

Windows での MySQL の使用: 自動スケジュールバックアップの実装

1. バックアップスクリプトを書く 著者:www.yumi-info.com 日付:20171222...

MySQLのインストールと設定に関する詳細なチュートリアル

目次インストール不要のMySQLバージョン1. インストール パッケージをダウンロードします。 2....