关于编译WebRTC Linux/Android版源码的说明

简介: 关于编译WebRTC Linux/Android版源码的说明分享下,Linux/Android版本,默认必须在Ubuntu上编译,Debian和Ubuntu是同类型OS,应该也可以,不过我没试过,其他类型部分支持,没有关于CentOS的说明,所有不要在这个系统上捣腾,虽然理论上可以,但可能会碰到很多问题。


关于编译WebRTC Linux/Android版源码的说明


分享下,Linux/Android版本,默认必须在Ubuntu上编译,Debian和Ubuntu是同类型OS,应该也可以,不过我没试过,其他类型部分支持,没有关于CentOS的说明,所有不要在这个系统上捣腾,虽然理论上可以,但可能会碰到很多问题。

另外说明下,

Android版只能在Linux上编译(编译工具使用NDK,这个工具会被下载到third_party/android_tools下面

Windows版只能在Windows上编译(编译工具使用VS2013/VS2015)

IOS只能在Mac OS X上编译(编译工具必须使用Xcode 5或者以上版本,建议使用最新版Xcode)


下面是官网关于编译chrome的说明(其实WebRTC编译也要依赖这些):https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instructions.md


Ubuntu

Once you have checked out the code, run build/install-build-deps.sh The script only supports current releases as listed on https://wiki.ubuntu.com/Releases. This script is used to set up the canonical builders, and as such is the most up to date reference for the required prerequisites.

Debian

Follow the Ubuntu instructions above. If you want to install the build-deps manually, note that the original packages are for Ubuntu. Here are the Debian equivalents:
•libexpat-dev -> libexpat1-dev
•freetype-dev -> libfreetype6-dev
•libbzip2-dev -> libbz2-dev
•libcupsys2-dev -> libcups2-dev

Additionally, if you‘re building Chromium components for Android, you’ll need to install the package: lib32z1

openSUSE

For openSUSE 11.0 and later, see Linux openSUSE Build Instructions.

Fedora

Recent systems:
su -c 'yum install subversion pkgconfig python perl gcc-c++ bison flex \
gperf nss-devel nspr-devel gtk2-devel glib2-devel freetype-devel atk-devel \
pango-devel cairo-devel fontconfig-devel GConf2-devel dbus-devel \
alsa-lib-devel libX11-devel expat-devel bzip2-devel dbus-glib-devel \
elfutils-libelf-devel libjpeg-devel mesa-libGLU-devel libXScrnSaver-devel \
libgnome-keyring-devel cups-devel libXtst-devel libXt-devel pam-devel httpd \
mod_ssl php php-cli wdiff'


The msttcorefonts packages can be obtained by following the instructions present here. For the optional packages:
•php-cgi is provided by the php-cli package
•wdiff doesn't exist in Fedora repositories, a possible alternative would be dwdiff
•sun-java6-fonts doesn't exist in Fedora repositories, needs investigating

Arch Linux

Most of these packages are probably already installed since they're often used, and the parameter --needed ensures that packages up to date are not reinstalled.
sudo pacman -S --needed python perl gcc gcc-libs bison flex gperf pkgconfig \
nss alsa-lib gconf glib2 gtk2 nspr ttf-ms-fonts freetype2 cairo dbus \
libgnome-keyring


For the optional packages on Arch Linux:
•php-cgi is provided with pacman
•wdiff is not in the main repository but dwdiff is. You can get wdiff in AUR/yaourt
•sun-java6-fonts do not seem to be in main repository or AUR.

Mandriva


urpmi lib64fontconfig-devel lib64alsa2-devel lib64dbus-1-devel \
lib64GConf2-devel lib64freetype6-devel lib64atk1.0-devel lib64gtk+2.0_0-devel \
lib64pango1.0-devel lib64cairo-devel lib64nss-devel lib64nspr-devel g++ python \
perl bison flex subversion gperf

•msttcorefonts are not available, you will need to build your own (see instructions, not hard to do, see mandriva_msttcorefonts.md) or use drakfont to import the fonts from a windows installation
•These packages are for 64 bit, to download the 32 bit packages, substitute lib64 with lib
•Some of these packages might not be explicitly necessary as they come as dependencies, there is no harm in including them however.

Gentoo


emerge www-client/chromium





目录
相关文章
|
4天前
|
Linux 编译器 开发工具
Android内核的编译过程
Android内核的编译过程
|
6天前
|
Linux
Linux编译FFmpeg
Linux编译FFmpeg
12 0
|
4天前
|
移动开发 jenkins 持续交付
jenkins编译H5做的android端编译卫士app记录
jenkins编译H5做的android端编译卫士app记录
|
4天前
|
Android开发
在android源码中编译ADW_Launcher
在android源码中编译ADW_Launcher
10 2
|
4天前
|
Ubuntu Android开发
Android Froyo基于32 bit ubuntu 10.10编译问题
Android Froyo基于32 bit ubuntu 10.10编译问题
|
6天前
|
Shell 开发工具 Android开发
android 修改kernel编译版本信息
android 修改kernel编译版本信息
14 0
|
6天前
|
Ubuntu Linux Shell
Android-NDK-clang 编译 FFmpeg
Android-NDK-clang 编译 FFmpeg
16 0
|
6天前
|
编译器 Android开发
Android S内置APK时AndroidManifest使用uses-library编译报错
Android S内置APK时AndroidManifest使用uses-library编译报错
11 0
|
7天前
|
Android开发 C++
Android S HAL库的编译
Android S HAL库的编译
10 0