| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- Compilation instructions! Temporary quick compilation instructions!
- Will give better instructions later when things are in a more complete state.
- Windows:
- - Load git submodules (required):
- git submodule init && git submodule update
- - NOTE: OBS on windows currently requires VS2013, as obs-studio uses C99 and
- C++11. Express might not be supported at this time (though I'll fix it at
- some point).
- - Download (or build) development packages of FFmpeg, x264, Qt5.
- - Download windows version of cmake from: http://www.cmake.org/
- - Add windows environment variables:
- FFMpegPath (path to FFmpeg include directory)
- x264Path (path to x264 include directory)
- QTDIR (path to Qt build base directory)
- NOTE: Each of these environment variables can specify 32bit and 64bit by
- appending 32 and 64 to the end of the environment variable names.
- So if you want to separate locations for 32bit or 64bit, you can set:
- FFmpegPath32, FFmpegPath64, x264Path32, x264Path64, QTDIR32, QTDIR64, etc.
- NOTE: These variables are optional and these can be entered in to cmake
- while generating, but having these variables makes life much easier in case
- you need to regenerate your cmake data from scratch for whatever reason.
- NOTE: An example Qt directory you would use here if you installed Qt5 to
- D:\Qt would usually look something like this for the 32bit version:
- D:\Qt\5.3\msvc2013
- And something like this for the 64bit version
- D:\Qt\5.3\msvc2013_64
- NOTE: Search paths and search order for FFmpeg and x264 library/binary
- files, relative to their include directories:
- Library files
- ../lib
- ../lib32 (if 32bit)
- ../lib64 (if 64bit)
- ./lib
- ./lib32 (if 32bit)
- ./lib64 (if 64bit)
- Binary files:
- ../bin
- ../bin32 (if 32bit)
- ../bin64 (if 64bit)
- ./bin
- ./bin32 (if 32bit)
- ./bin64 (if 64bit)
- - Run cmake-gui. In "where is the source code", enter in the repo directory
- (example: D:/obs). In "where to build the binaries", enter the repo
- directory path with the 'build' subdirectory (example: D:/obs/build).
- NOTE: The subdirectories 'build', 'release', and 'debug' are meant for
- builds, and are excluded from the repo in .gitignore, so they are safe to
- use for building.
- - Press 'Configure', then enable the COPY_DEPENDENCIES option, then press
- 'Configure' again, and then press 'Generate' to generate visual studio
- project files in the 'build' subdirectory.
- - Open obs-studio.sln from the 'build' subdirectory, and it should run and
- be good to go. All required dependencies should be copied on compile and
- it should be a fully fuctional build environment.
- Mac OSX
- - Load git submodules (required):
- git submodule init && git submodule update
- - Use macports or homebrew and install FFmpeg, x264, Qt5, and cmake.
- NOTE: Qt5 can also be downloaded/installed via the Qt website, though keep
- in mind that you will have to set the QTDIR environment variable to the
- Qt5 build base directory.
- - Make sure to have the OSX 10.9 or newer SDK installed (comes with recent
- versions of Xcode)
- - In a terminal, go to the obs-studio directory create a 'build' sub
- directory and change to it, then to build, type:
- - on OSX 10.9 or newer:
- cmake .. && make
- - on OSX 10.8:
- MACOSX_DEPLOYMENT_TARGET=10.8 cmake -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/ .. && make
- - It builds in a modular structure by default. To run it via terminal, go to
- build/rundir/RelWithDebInfo/bin, then type ./obs to run.
- NOTE: If you are running via command prompt, you *must* be in the 'bin'
- directory specified above, otherwise it will not be able to find its files
- relative to the binary.
- - To create an app bundle instead, use the command: make package
- This will create a .dmg file with an app bundle inside.
- Linux (Ubuntu 14.04/14.10/15.04 installation)
- - FFmpeg is required. If you do not have the FFmpeg installed (if you're not
- sure, then you probably don't have it), you can get it with the following
- commands:
- For Ubuntu 14.04/14.10:
- sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
- sudo apt-get update && sudo apt-get install ffmpeg
- For Ubuntu 15.04:
- sudo apt-get install ffmpeg
- - Then you can install OBS with the following commands:
- sudo add-apt-repository ppa:obsproject/obs-studio
- sudo apt-get update && sudo apt-get install obs-studio
- Linux (Arch Linux installation, unofficial)
- - Link: https://aur.archlinux.org/packages/obs-studio-git
- Linux (OpenSUSE installation, unofficial)
- - Link: http://packman.links2linux.org/package/obs-studio
- Linux (Gentoo installation, unofficial)
- - Link: https://github.com/saintdev/obs-studio-overlay
- Linux (NixOS installation)
- - Get the latest Nix packages:
- git clone https://github.com/nixos/nixpkgs ~/nixpkgs
- - Install:
- nix-env -f ~/nixpkgs -Q -i obs-studio
- Linux (Manually compiling on Redhat-based distros such as Fedora)
- - Get RPM fusion at http://rpmfusion.org/Configuration/
- - Set up a build environment:
- sudo yum install gcc gcc-c++ gcc-objc cmake git
- - If you don't care much about FFmpeg features, just get it from RPM fusion:
- sudo yum install ffmpeg-devel
- - Get the required packages:
- sudo yum install libX11-devel libGL-devel ffmpeg-devel libv4l-devel \
- pulseaudio-libs-devel x264-devel freetype-devel \
- fontconfig-devel libXcomposite-devel libXinerama-devel \
- qt5-qtbase-devel qt5-qtx11extras-devel libcurl-devel
- - Building and installing OBS:
- git clone https://github.com/jp9000/obs-studio.git
- cd obs-studio
- mkdir build && cd build
- cmake -DUNIX_STRUCTURE=1 ..
- make -j4
- sudo make install
- Linux (Manually compiling on Debian-based distros)
- - Set up a build environment:
- sudo apt-get install build-essential pkg-config cmake git checkinstall
- - FFmpeg is required, and not commonly available on debian-based distros.
- If you want a custom compilation with FDK AAC encoder and such, see:
- https://trac.ffmpeg.org/wiki/CompilationGuide
- - Otherwise, I will only give easy and brief instructions for a very minimal
- FFmpeg installation:
- sudo apt-get install zlib1g-dev yasm
- git clone --depth 1 git://source.ffmpeg.org/ffmpeg.git
- cd ffmpeg
- ./configure --enable-shared --prefix=/usr
- make -j4
- sudo checkinstall --pkgname=FFmpeg --fstrans=no --backup=no \
- --pkgversion="$(date +%Y%m%d)-git" --deldoc=yes
- - Get the required packages:
- sudo apt-get install libx11-dev libgl-dev libpulse-dev libxcomposite-dev \
- libxinerama-dev libv4l-dev libudev-dev libfreetype6-dev \
- libfontconfig-dev qtbase5-dev libqt5x11extras5-dev libx264-dev \
- libxcb-xinerama0-dev libxcb-shm0-dev libjack-jackd2-dev libcurl-dev
- - Building and installing OBS:
- git clone https://github.com/jp9000/obs-studio.git
- cd obs-studio
- mkdir build && cd build
- cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
- make -j4
- sudo checkinstall --pkgname=obs-studio --fstrans=no --backup=no \
- --pkgversion="$(date +%Y%m%d)-git" --deldoc=yes
- Linux portable mode
- - You can also build in portable mode on Linux, which installs all the
- files to an isolated directory:
- mkdir build && cd build
- cmake -DUNIX_STRUCTURE=0 \
- -DCMAKE_INSTALL_PREFIX="${HOME}/obs-studio-portable" ..
- make -j4 && make install
- After that you should have a portable install in ~/obs-studio-portable
- Change to bin/64bit or bin/32bit and then simply run: ./obs
|