##WebRTC Build Scripts A set of build scripts useful for building WebRTC libraries for Android and iOS.
Bugs: Please submit the revision number that you are using. There are frequent updates to this project so please watch the changelist for bug fixes.
###Android-- Guide here The following instructions are for building the native WebRTC libraries for Android.
You should only need Ubuntu 12.04 on a 64 bit machine to get going.
This is only required once.
# Source all the routines
source android/build.sh
# Install any dependencies needed
install_dependencies
# Setup jdk
install_jdk1_6
# Pull WebRTC
get_webrtc
If you don't have a Ubuntu machine available, or you are too lazy to setup a virtual machine manually, you can build WebRTC for Android on your Mac or Windows PC through our Vagrant script.
First of all, you need to download and install Vagrant. After that, from the /android
directory, you need to execute the following in you shell:
# Boot up and provision the Vagrant box
vagrant up
# SSH into the Vagrant box
vagrant ssh
Then you can build the Android example
# Build apprtc
build_apprtc
# Build in debug mode
export WEBRTC_DEBUG=true
build_apprtc
You can build for x86 platform
# Build apprtc
export WEBRTC_ARCH=x86
build_apprtc
# Build in debug mode
export WEBRTC_ARCH=x86
export WEBRTC_DEBUG=true
build_apprtc
You can build a particular revision
# Pull WebRTC
get_webrtc 6783
# Build apprtc
build_apprtc
When the scripts are done you can find the .jar and .so file in $WEBRTC_HOME under "libjingle_peerconnection_builds".
###iOS -- Guide here These steps must be run on Mac OSX
Source the ios build scripts or open the Xcode project
source ios/build.sh
Specify if you want to build for Debug/Profile/Release by setting either WEBRTC_DEBUG, WEBRTC_PROFILE, WEBRTC_RELEASE as an environment variable in your bash or xcode scheme run settings.
WEBRTC_DEBUG=true
WEBRTC_PROFILE=true
#or
WEBRTC_RELEASE=true
Then you can build the Android example
# We use the term webrtc dance a lot to build
dance
Check which revision you are using at ./webrtc-build-scripts/ios/webrtc/libWebRTC-LATEST-Universal-Debug.a.version.txt
Open the xcode project, and execute the AppRTC Demo on any iOS 7 device or simulator
open ./webrtc-build-scripts/ios/WebRTC.xcodeproj
You can also build a particular revision
#Pull WebRTC
update2Revision 6783
Make changes then,
#Build WebRTC
build_webrtc
Make sure you label your new binaries that are generated in
./webrtc-build-scripts/ios/webrtc/libjingle_peerconnection_builds
To run the example AppRTC Demo project, clone the repo, and run pod install
from the Example directory first.
A fast internet connection.... for your own sanity
libjingle_peerconnection starting from revision 6931 is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "libjingle_peerconnection"
# Add this to the bottom so it won't have issues with active architecture
post_install do |installer_representation|
installer_representation.project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
config.build_settings['VALID_ARCHS'] = ['armv7', 'i386']
end
end
end
The versioning can be explained as follows:
6931.2.0
6931 reflects the SVN revision from the WebRTC root Google Code Project
2 reflects a Release Build (0 for Debug, 1 for Profile)
0 reflects any changes I might need to make to the sample xcode project itself to work (incremented normally)