INSTALL 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. Compilation instructions! Temporary quick compilation instructions!
  2. Will give better instructions later when things are in a more complete state.
  3. Windows:
  4. - Load git submodules (required):
  5. git submodule init && git submodule update
  6. - NOTE: OBS on windows currently requires VS2013, as obs-studio uses C99 and
  7. C++11. Express might not be supported at this time (though I'll fix it at
  8. some point).
  9. - Download (or build) development packages of FFmpeg, x264, Qt5.
  10. - Download windows version of cmake from: http://www.cmake.org/
  11. - Add windows environment variables:
  12. FFMpegPath (path to FFmpeg include directory)
  13. x264Path (path to x264 include directory)
  14. QTDIR (path to Qt build base directory)
  15. NOTE: Each of these environment variables can specify 32bit and 64bit by
  16. appending 32 and 64 to the end of the environment variable names.
  17. So if you want to separate locations for 32bit or 64bit, you can set:
  18. FFmpegPath32, FFmpegPath64, x264Path32, x264Path64, QTDIR32, QTDIR64, etc.
  19. NOTE: These variables are optional and these can be entered in to cmake
  20. while generating, but having these variables makes life much easier in case
  21. you need to regenerate your cmake data from scratch for whatever reason.
  22. NOTE: An example Qt directory you would use here if you installed Qt5 to
  23. D:\Qt would usually look something like this for the 32bit version:
  24. D:\Qt\5.3\msvc2013
  25. And something like this for the 64bit version
  26. D:\Qt\5.3\msvc2013_64
  27. NOTE: Search paths and search order for FFmpeg and x264 library/binary
  28. files, relative to their include directories:
  29. Library files
  30. ../lib
  31. ../lib32 (if 32bit)
  32. ../lib64 (if 64bit)
  33. ./lib
  34. ./lib32 (if 32bit)
  35. ./lib64 (if 64bit)
  36. Binary files:
  37. ../bin
  38. ../bin32 (if 32bit)
  39. ../bin64 (if 64bit)
  40. ./bin
  41. ./bin32 (if 32bit)
  42. ./bin64 (if 64bit)
  43. - Run cmake-gui. In "where is the source code", enter in the repo directory
  44. (example: D:/obs). In "where to build the binaries", enter the repo
  45. directory path with the 'build' subdirectory (example: D:/obs/build).
  46. NOTE: The subdirectories 'build', 'release', and 'debug' are meant for
  47. builds, and are excluded from the repo in .gitignore, so they are safe to
  48. use for building.
  49. - Press 'Configure', then enable the COPY_DEPENDENCIES option, then press
  50. 'Configure' again, and then press 'Generate' to generate visual studio
  51. project files in the 'build' subdirectory.
  52. - Open obs-studio.sln from the 'build' subdirectory, and it should run and
  53. be good to go. All required dependencies should be copied on compile and
  54. it should be a fully fuctional build environment.
  55. Mac OSX
  56. - Load git submodules (required):
  57. git submodule init && git submodule update
  58. - Use macports or homebrew and install FFmpeg, x264, Qt5, and cmake.
  59. NOTE: Qt5 can also be downloaded/installed via the Qt website, though keep
  60. in mind that you will have to set the QTDIR environment variable to the
  61. Qt5 build base directory.
  62. - Make sure to have the OSX 10.9 or newer SDK installed (comes with recent
  63. versions of Xcode)
  64. - In a terminal, go to the obs-studio directory create a 'build' sub
  65. directory and change to it, then to build, type:
  66. - on OSX 10.9 or newer:
  67. cmake .. && make
  68. - on OSX 10.8:
  69. MACOSX_DEPLOYMENT_TARGET=10.8 cmake -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/ .. && make
  70. - It builds in a modular structure by default. To run it via terminal, go to
  71. build/rundir/RelWithDebInfo/bin, then type ./obs to run.
  72. NOTE: If you are running via command prompt, you *must* be in the 'bin'
  73. directory specified above, otherwise it will not be able to find its files
  74. relative to the binary.
  75. - To create an app bundle instead, use the command: make package
  76. This will create a .dmg file with an app bundle inside.
  77. Linux (Ubuntu 14.04/14.10/15.04 installation)
  78. - FFmpeg is required. If you do not have the FFmpeg installed (if you're not
  79. sure, then you probably don't have it), you can get it with the following
  80. commands:
  81. For Ubuntu 14.04/14.10:
  82. sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
  83. sudo apt-get update && sudo apt-get install ffmpeg
  84. For Ubuntu 15.04:
  85. sudo apt-get install ffmpeg
  86. - Then you can install OBS with the following commands:
  87. sudo add-apt-repository ppa:obsproject/obs-studio
  88. sudo apt-get update && sudo apt-get install obs-studio
  89. Linux (Arch Linux installation, unofficial)
  90. - Link: https://aur.archlinux.org/packages/obs-studio-git
  91. Linux (OpenSUSE installation, unofficial)
  92. - Link: http://packman.links2linux.org/package/obs-studio
  93. Linux (Gentoo installation, unofficial)
  94. - Link: https://github.com/saintdev/obs-studio-overlay
  95. Linux (NixOS installation)
  96. - Get the latest Nix packages:
  97. git clone https://github.com/nixos/nixpkgs ~/nixpkgs
  98. - Install:
  99. nix-env -f ~/nixpkgs -Q -i obs-studio
  100. Linux (Manually compiling on Redhat-based distros such as Fedora)
  101. - Get RPM fusion at http://rpmfusion.org/Configuration/
  102. - Set up a build environment:
  103. sudo yum install gcc gcc-c++ gcc-objc cmake git
  104. - If you don't care much about FFmpeg features, just get it from RPM fusion:
  105. sudo yum install ffmpeg-devel
  106. - Get the required packages:
  107. sudo yum install libX11-devel libGL-devel ffmpeg-devel libv4l-devel \
  108. pulseaudio-libs-devel x264-devel freetype-devel \
  109. fontconfig-devel libXcomposite-devel libXinerama-devel \
  110. qt5-qtbase-devel qt5-qtx11extras-devel libcurl-devel
  111. - Building and installing OBS:
  112. git clone https://github.com/jp9000/obs-studio.git
  113. cd obs-studio
  114. mkdir build && cd build
  115. cmake -DUNIX_STRUCTURE=1 ..
  116. make -j4
  117. sudo make install
  118. Linux (Manually compiling on Debian-based distros)
  119. - Set up a build environment:
  120. sudo apt-get install build-essential pkg-config cmake git checkinstall
  121. - FFmpeg is required, and not commonly available on debian-based distros.
  122. If you want a custom compilation with FDK AAC encoder and such, see:
  123. https://trac.ffmpeg.org/wiki/CompilationGuide
  124. - Otherwise, I will only give easy and brief instructions for a very minimal
  125. FFmpeg installation:
  126. sudo apt-get install zlib1g-dev yasm
  127. git clone --depth 1 git://source.ffmpeg.org/ffmpeg.git
  128. cd ffmpeg
  129. ./configure --enable-shared --prefix=/usr
  130. make -j4
  131. sudo checkinstall --pkgname=FFmpeg --fstrans=no --backup=no \
  132. --pkgversion="$(date +%Y%m%d)-git" --deldoc=yes
  133. - Get the required packages:
  134. sudo apt-get install libx11-dev libgl-dev libpulse-dev libxcomposite-dev \
  135. libxinerama-dev libv4l-dev libudev-dev libfreetype6-dev \
  136. libfontconfig-dev qtbase5-dev libqt5x11extras5-dev libx264-dev \
  137. libxcb-xinerama0-dev libxcb-shm0-dev libjack-jackd2-dev libcurl-dev
  138. - Building and installing OBS:
  139. git clone https://github.com/jp9000/obs-studio.git
  140. cd obs-studio
  141. mkdir build && cd build
  142. cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
  143. make -j4
  144. sudo checkinstall --pkgname=obs-studio --fstrans=no --backup=no \
  145. --pkgversion="$(date +%Y%m%d)-git" --deldoc=yes
  146. Linux portable mode
  147. - You can also build in portable mode on Linux, which installs all the
  148. files to an isolated directory:
  149. mkdir build && cd build
  150. cmake -DUNIX_STRUCTURE=0 \
  151. -DCMAKE_INSTALL_PREFIX="${HOME}/obs-studio-portable" ..
  152. make -j4 && make install
  153. After that you should have a portable install in ~/obs-studio-portable
  154. Change to bin/64bit or bin/32bit and then simply run: ./obs