# Compiling and Installing in Debian



## Andy "PyroAVR" Meyer (Aug 14, 2014)

*Please note:*  I have compiled OBS-studio for Debian and it's derivatives on amd64 and/or x86-64!  You can download a precompiled binary here (may be out of date): https://www.dropbox.com/s/jgc052w45sbltna/obs-studio.deb?dl=0
_Leave a comment/pm me if it does not work for you, and I'll get on the case!_  Thank you!


To whomever it may concern/If you need help making OBS-Studio run on Debian:
I just made this work today on OBS-Studio 0.4.2-g69b9e72, cloned from the git repo.  This works so far on Titanium Linux (my custom distro) which is based on Testing/Jessie.  Therefore, it should work on Debian Testing/Jessie and I can't see why it wouldn't work on Stable/Wheezy or Unstable/Sid.
Here are the commands, note that '$' is a normal user prompt and '#' is a root user prompt, and you don't have to type them, however you *must* type everything after them.
To get to a root prompt, use _su_ or _sudo_.  Your call, there seems to be lots of Linux debate over which is better.
First things first, get the latest OBS-Studio from Jim's GitHub:
$git clone git://github.com/jp9000/obs-studio.git​
(Don't have git? Install it! #apt-get install git)​
Now, OBS-Studio depends on FFMpeg's many libraries, and Debian's default repos don't have a new enough version. Deb-multimedia's version also doesn't work, so we'll have to compile from source.

Get FFMpeg from the FFMpeg website:
$git clone git://source.ffmpeg.org/ffmpeg.git​
We've now downloaded the sources for FFMpeg, so we'll compile them.  By default, FFMpeg compiles it's command line tools, and _static libraries_ for other programs to link to.  OBS-Studio requires _dynamic_ or _shared libraries_ so we have to specify that we want that rather than the default.

Compile FFMpeg tools and shared libraries:
$cd ffmpeg
$./configure --enable-shared --disable-static
The above command sets up FFMpeg to be compiled the way we want it.  These steps will take some time depending on how good your computer is.  Be patient.
$make -jX
Replace 'X' with twice the number of *logical cores* your computer has.  This speeds up the build process.  The number of logical cores is how many cores your computer has, so, for example, a dual core computer would have _make -j4_ whilst a four core computer would have _make -j8_, and so on.
#make install
Remember that you need to be root to install a package... Use _sudo _or _su._​
Now that you have FFMpeg installed, we can begin to compile OBS.
$cd ../obs-studio
This is assuming that you were in the FFMpeg directory before... Just get yourself to the OBS-Studio directory and you'll be okay
$mkdir build
OBS-Studio uses a build system named CMake.  To compile OBS-Studio, you need CMake, and the best way to run CMake is to give it a directory to start in and then tell it where CMakeLists.txt is.

(Don't have CMake? Install it! #apt-get install cmake)
$cd build
$cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
The above tells cmake to run, compile for a POSIX-compliant architecture (i.e. Linux) and to install libraries and such under _/usr._
$make -jX
Just like above, replace 'X' with the number of *logical cores* that your computer has.
#make install
For whatever reason, if you run OBS-Studio from the command line and it's installed directory, it can't find some of it's dependencies.  I'd not even bother with this step, just run OBS from the build directory.​Congratulations! If you've made it here with no errors and you see 'Built Target OBS' on your command line, you've succeeded!

Running OBS:
$cd obs
$./obs
To run OBS from elsewhere, type:
$./path/to/obs-studio/build/obs/obs​Extras:
Checkinstall:
You can make a .deb package using checkinstall.
#apt-get install checkinstall
Now, replace all _make install_ steps with _checkinstall_​If this works for you, awesome! If it doesn't, tell me and I'll try to help! I hope this helped you all!
​


----------



## LordKitsuna (Aug 15, 2014)

I could really use some help here, i cant for the life of me get this to work i get stuck at the last make i get this error right at the end 


/home/lordkitsuna/gitstuff/obs-studio/obs/properties-view.cpp: In member function ‘void OBSPropertiesView::AddColor(obs_property_t, QFormLayout*, QLabel*&)’:
/home/lordkitsuna/gitstuff/obs-studio/obs/properties-view.cpp:337:33: error: ‘HexArgb’ is not a member of ‘QColor’
  colorLabel->setText(color.name(QColor::HexArgb));
  ^
/home/lordkitsuna/gitstuff/obs-studio/obs/properties-view.cpp: In member function ‘bool WidgetInfo::ColorChanged(const char*)’:
/home/lordkitsuna/gitstuff/obs-studio/obs/properties-view.cpp:543:28: error: ‘HexArgb’ is not a member of ‘QColor’
  label->setText(color.name(QColor::HexArgb));
  ^
make[2]: *** [obs/CMakeFiles/obs.dir/properties-view.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [obs/CMakeFiles/obs.dir/all] Error 2
make: *** [all] Error 2

Any ideas?


----------



## Andy "PyroAVR" Meyer (Aug 15, 2014)

LordKitsuna said:


> I could really use some help here, i cant for the life of me get this to work i get stuck at the last make i get this error right at the end
> 
> 
> /home/lordkitsuna/gitstuff/obs-studio/obs/properties-view.cpp: In member function ‘void OBSPropertiesView::AddColor(obs_property_t, QFormLayout*, QLabel*&)’:
> ...


Well, I'm not an expert, but here are my two cents.  'Q' anything, especially functions dealing with colors, labels, etc. (QColor, etc.) has something to do with Qt Framework, because 'Q' is it's C-language namespace.  In human terms, anything prefixed with Q is from Qt Framework, which helps make the User Interface of OBS and many others.
Therefore, it looks like something is wrong with your Qt setup.  OBS-Studio depends upon Qt5, the latest version.  Before I give suggestions on what to do, I need to know what distro you're using, and also what 'flavor'.  For example, I'm running Titanium/Release, but you might be on Linux Mint 16 or Ubuntu 14.04.  If you're using Debian, Something like Debian Squeeze, Wheezy, Jessie, Sid would be your version.


----------



## LordKitsuna (Aug 15, 2014)

I am using LMDE is which a rolling release based on debian testing if i am not mistaken. I have QT5 installed but i am not entirely sure what version.

Get:19 http://debian.linuxmint.com/latest/ testing/main qtbase5-dev amd64 5.1.1+dfsg-5 [1,588 kB]
Get:20 http://debian.linuxmint.com/latest/ testing/main qt5-default amd64 5.1.1+

^is what apt grabbed


----------



## Andy "PyroAVR" Meyer (Aug 15, 2014)

LordKitsuna said:


> I am using LMDE is which a rolling release based on debian testing if i am not mistaken. I have QT5 installed but i am not entirely sure what version.
> 
> Get:19 http://debian.linuxmint.com/latest/ testing/main qtbase5-dev amd64 5.1.1+dfsg-5 [1,588 kB]
> Get:20 http://debian.linuxmint.com/latest/ testing/main qt5-default amd64 5.1.1+
> ...


Oh, thank goodness, it's going as I'd hoped it would.  I love LMDE, I ran it myself for a long time! Also, LMDE is based off Debian/Testing. Anyway, the Qt5 which is packaged in Debian's repositories does not work with OBS-Studio (figures, I know.)
You need to get Qt5 from their website. http://qt-project.org/downloads
Get the installer for your platform and let it suck up your disk space, it's worth it when all of your Qt5 applications actually match all your GTK+ themes and fit with your desktop.  If I recall correctly you have to download the installer file, make it executable and then run it, allow it to install the full package, then try to recompile OBS.  (I'll go verify this on a VM or something and then I'll add it to the above.


----------



## LordKitsuna (Aug 15, 2014)

Cool ill try that now, there was also an insane number of libs i had to add to even get that far not mentioned in your guide. I am sure anyone else probably woulda known to install them but when you do the VM of LMDE it would be worth adding everything you gotta install to the guide for those silly noobs like me :D ill report back soon with how it went.


----------



## LordKitsuna (Aug 15, 2014)

Could not find a package configuration file provided by "Qt5Widgets" with
  any of the following names:

  Qt5WidgetsConfig.cmake
  qt5widgets-config.cmake

  Add the installation prefix of "Qt5Widgets" to CMAKE_PREFIX_PATH or set
  "Qt5Widgets_DIR" to a directory containing one of the above files.  If
  "Qt5Widgets" provides a separate development package or SDK, be sure it has
  been installed.

Cant figure out i didnt see anything i missed in the install of qt

*EDIT:* Alright i was able to define the path in CMakeLists.txt and it worked but i cant seem to figure out how do define this error

By not providing "FindPulseAudio.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "PulseAudio", but CMake did not find one.

  Could not find a package configuration file provided by "PulseAudio" with
  any of the following names:

  PulseAudioConfig.cmake
  pulseaudio-config.cmake

  Add the installation prefix of "PulseAudio" to CMAKE_PREFIX_PATH or set
  "PulseAudio_DIR" to a directory containing one of the above files.  If
  "PulseAudio" provides a separate development poing to try streaming now.ackage or SDK, be sure it has
  been installed.


-- PulseAudio not found, disabling PulseAudio plugin

BUT! it BUILDS!
[100%] Built target obs

So i can only assume this means i wont have audio. It works tho i was able to do install and open the program going to try streaming now. 

*EDIT2: *Streaming works and fairly well too able to get a decently smooth stream going no audio as expected.


----------



## Andy "PyroAVR" Meyer (Aug 15, 2014)

LordKitsuna said:


> Could not find a package configuration file provided by "Qt5Widgets" with
> any of the following names:
> 
> Qt5WidgetsConfig.cmake
> ...


I'm glad I've at least solved your problem, but all I had to do to make CMake play nice was install the -dev packages for things it couldn't find...  I'll do this again in a VM and write down everything needed, then add it to my tutorial above! Happy recording/streaming/whatever


----------



## LordKitsuna (Aug 16, 2014)

See if you can figure out why the pulse audio wont build. apt couldnt find a dev version to that and i am not sure how to get that one working would be nice to be able to send audio.


----------



## Andy "PyroAVR" Meyer (Aug 16, 2014)

LordKitsuna said:


> See if you can figure out why the pulse audio wont build. apt couldnt find a dev version to that and i am not sure how to get that one working would be nice to be able to send audio.


I'm on it!


----------



## Dudu (Aug 19, 2014)

Hi, i installed the whole package on Slackware. It open up and i can even stream video... but i don't have any sound.

Just before i went to streaming i knew i was about to get 'no sound' because of this: (Look at uploaded image)

'Desktop audio device' = No choice is available here.

I took a look at the log file, for some reason it doesn't seems to detect 'Pulse audio' and i already have installed from Slackbuild (V5.0).

Using Alsa instead would be great :\


----------



## Jim (Aug 19, 2014)

Dudu - Are you sure pulseaudio is properly installed?  The dev packages in particular, if you're building it yourself?


----------



## WodahsReklaw (Aug 23, 2014)

Hello I am having a similar issue with the Qt5x11extra library not being found by cmake. I did install Qt5.3 locally but I am kind of a noob when adding the path to libraries. I was wondering how to modify the CMakeLists.txt to give the path to the Qt library.



LordKitsuna said:


> Could not find a package configuration file provided by "Qt5Widgets" with
> any of the following names:
> 
> Qt5WidgetsConfig.cmake
> ...


----------



## Noven (Aug 24, 2014)

Trying to compile and have worked through many compile errors. I am stuck at the following: 

michael@debian:~/obs-studio/build$ cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
-- Jansson >=2.5 not found, building bundled version
-- Using libavcodec for image loading in libobs
-- Xcomposite library not found, Xcomposite plugin disabled
-- Libfdk not found - obs-libfdk plugin disabled
-- Linux-specific code has yet to be written for the text plugin, just needs load_os_font_list written..  which, er, may or may not be a pain.  (My apologies in advance, please don't strangle me)
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
V4L2_LIB (ADVANCED)
    linked by target "linux-v4l2" in directory /home/michael/obs-studio/plugins/linux-v4l2
X264_INCLUDE_DIR (ADVANCED)
   used as include directory in directory /home/michael/obs-studio/plugins/obs-x264
X264_LIB (ADVANCED)
    linked by target "obs-x264" in directory /home/michael/obs-studio/plugins/obs-x264

-- Configuring incomplete, errors occurred!
See also "/home/michael/obs-studio/build/CMakeFiles/CMakeOutput.log".
See also "/home/michael/obs-studio/build/CMakeFiles/CMakeError.log".


----------



## Jim (Aug 24, 2014)

WodahsReklaw - you have to manually install that particular package from your package manager (usually).  If it's installed and cmake causes a fuss, you need to modify the variable having the issue and specify the appropriate cmake directory for that particular module

Noven - Are x264 and v4l packages installed on your system?


----------



## Noven (Aug 24, 2014)

Yeah both are installed as well as their dev packages.

libv4l-0/testing,unstable,now 1.2.1-2 amd64 [installed]
  Collection of video4linux support libraries

libv4l-dev/testing,unstable,now 1.2.1-2 amd64 [installed]
  Collection of video4linux support libraries (development files)

libv4l2rds0/testing,unstable,now 1.2.1-2 amd64 [installed,automatic]
  Video4Linux Radio Data System (RDS) decoding library

libv4lconvert0/testing,unstable,now 1.2.1-2 amd64 [installed,automatic]
  Video4linux frame format conversion library

libx264-142/unstable,now 3:0.142.2452+git08d36b3-dmo1 amd64 [installed,automatic]
  x264 video coding library.

libx264-dev/unstable,now 3:0.142.2452+git08d36b3-dmo1 amd64 [installed]
  development files for libx264.


----------



## Andy "PyroAVR" Meyer (Aug 25, 2014)

Thanks Jim, I'm glad to have an expert to help. To everyone having issues with PulseAudio -- It's finicky.  I know I had trouble getting it going, you'll probably need to have ALSA installed as well to interface with some applications that refuse to play nice with Pulse, and if you're using something really old you'll need Esound...
If x264 is giving you troubles, compile from source. Try to compile FFMpeg with --enable-x264 as an argument to ./configure...
I have no experience with Slackware, so I can't say anything about how to get packages with it, nor how up-to-date they are, OBS seems to need pretty new stuff, and for good reason.  The newer libraries are more stable and faster by a long shot.


----------



## Andy "PyroAVR" Meyer (Aug 25, 2014)

Dudu said:


> Hi, i installed the whole package on Slackware. It open up and i can even stream video... but i don't have any sound.
> 
> Just before i went to streaming i knew i was about to get 'no sound' because of this: (Look at uploaded image)
> 
> ...


The reason OBS doesn't use ALSA is because ALSA is being phased out of Linux.  PulseAudio is more extensible and flexible, and while I love the simplicity of ALSA, Pulse is compatible, given that it is installed correctly.  ALSA will also remain available, it just won't be the standard.  By any chance does Slackware have any kind of PulseAudio plugin that makes it receive ALSA devices properly?  Do you have ALSA installed?



WodahsReklaw said:


> Hello I am having a similar issue with the Qt5x11extra library not being found by cmake. I did install Qt5.3 locally but I am kind of a noob when adding the path to libraries. I was wondering how to modify the CMakeLists.txt to give the path to the Qt library.



Qt5 can't be installed by package manager -- manually or automagically.  If you're using Debian, you'd probably need to run Sid to get it, and then it still doesn't work right.  Qt5 is available in Testing/Jessie, but it doesn't work with CMake.  Qt5 is best installed using the installer from their webpage, I promise it works much better.  Plus, CMake works then.



Noven said:


> Yeah both are installed as well as their dev packages.
> 
> libv4l-0/testing,unstable,now 1.2.1-2 amd64 [installed]
> Collection of video4linux support libraries
> ...



It seems that you have all the libraries, but CMake can't find it's special build files for them.  Did you install the packages, or the Development packages?  You need both to compile OBS for Linux.  On Debian, you'll need libv4l2-dev and libv4l and video4linux, or something like that.


----------



## Noven (Aug 26, 2014)

I have these from the list: 

libv4l-0/testing,unstable,now 1.2.1-2 amd64 [installed]
  Collection of video4linux support libraries

libv4l-dev/testing,unstable,now 1.2.1-2 amd64 [installed]
  Collection of video4linux support libraries (development files)

libv4l2rds0/testing,unstable,now 1.2.1-2 amd64 [installed,automatic]
  Video4Linux Radio Data System (RDS) decoding library

libv4lconvert0/testing,unstable,now 1.2.1-2 amd64 [installed,automatic]
  Video4linux frame format conversion library

v4l-conf/testing,unstable,now 3.103-3 amd64 [installed]
  tool to configure video4linux drivers

v4l-utils/testing,unstable,now 1.2.1-2 amd64 [installed]
  Collection of command line video4linux utilities


Am I missing something? I seem to have what I need but obs is just not finding them.


----------



## Andy "PyroAVR" Meyer (Aug 26, 2014)

Noven said:


> I have these from the list:
> 
> libv4l-0/testing,unstable,now 1.2.1-2 amd64 [installed]
> Collection of video4linux support libraries
> ...



Well, I checked to see what Debian/testing has in it's repos, and it seems like you've got it all.  When you compile OBS, do you re-configure as well?  Whenever you recompile, it is a good idea to:
$make clean
$./configure <args>
$cmake <args> ..
$make
That should get everything started again, it forces the build-scripts to search for packages again.


----------



## Noven (Aug 29, 2014)

Not sure that will do the trick... haha

michael@debian:~/obs-studio/build$ make clean
make: *** No rule to make target 'clean'.  Stop.


----------



## Sunniboi (Apr 22, 2015)

This is in wheezy what can i do
/obs-studio/plugins/linux-v4l2/v4l2-input.c: In function ‘v4l2_device_list’:
/obs-studio/plugins/linux-v4l2/v4l2-input.c:301:36: error: ‘V4L2_CAP_DEVICE_CAPS’ undeclared (first use in this function)
/obs-studio/plugins/linux-v4l2/v4l2-input.c:301:36: note: each undeclared identifier is reported only once for each function it appears in
/obs-studio/plugins/linux-v4l2/v4l2-input.c:302:15: error: ‘struct v4l2_capability’ has no member named ‘device_caps’
/obs-studio/plugins/linux-v4l2/v4l2-input.c: In function ‘format_selected’:
/obs-studio/plugins/linux-v4l2/v4l2-input.c:599:28: error: ‘V4L2_IN_CAP_DV_TIMINGS’ undeclared (first use in this function)
/obs-studio/plugins/linux-v4l2/v4l2-input.c: In function ‘v4l2_init’:
/obs-studio/plugins/linux-v4l2/v4l2-input.c:831:19: error: ‘V4L2_IN_CAP_DV_TIMINGS’ undeclared (first use in this function)
make[2]: *** [plugins/linux-v4l2/CMakeFiles/linux-v4l2.dir/v4l2-input.c.o] Fehler 1
make[1]: *** [plugins/linux-v4l2/CMakeFiles/linux-v4l2.dir/all] Fehler 2


----------



## Ejk (Apr 22, 2015)

On debian 7.8 wheezy:
Cmake-2.8.12 is only aviable on i386 and x86-64, on others the newest version is 2.8.9.
Should I try to update to jessie?


----------



## Sunniboi (Apr 23, 2015)

No! My Thinking ist not Upgrade to Jessie! Jessie ist not frozen! You can Manualy  Cmake-2.8.12 with sources in your personal home install. I make that!


----------



## Ejk (Apr 25, 2015)

I backported cmake from jessie. Now I'm stuck on compiling obs: xcb_randr not found



Spoiler: Terminal log



root@localhost:/# cd obs-studio/build
root@localhost:/obs-studio/build# cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
-- OBS_VERSION: 0.9.1-95-g4af2353
-- Found FFMpeg: /usr/sbin/../lib/libavcodec.so (found version "56.35.101") found components:  avcodec avfilter avdevice avutil swscale avformat swresample
-- Jansson >=2.5 not found, building bundled version
-- XCB[XCB]: Found component XCB
-- Found FFMpeg: /usr/sbin/../lib/libavformat.so (found version "56.31.100") found components:  avformat avutil swscale swresample avcodec
-- Using libavcodec for image loading in libobs
-- XCB[XCB]: Found component XCB
-- Could NOT find XCB_RANDR (missing:  XCB_RANDR_LIBRARY XCB_RANDR_INCLUDE_DIR)
-- XCB[XINERAMA]: Found component XINERAMA
CMake Error at /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
  Could NOT find XCB (missing: XCB_RANDR_FOUND)
Call Stack (most recent call first):
  /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindXCB.cmake:239 (find_package_handle_standard_args)
  obs/CMakeLists.txt:74 (find_package)


-- Configuring incomplete, errors occurred!
See also "/obs-studio/build/CMakeFiles/CMakeOutput.log".
See also "/obs-studio/build/CMakeFiles/CMakeError.log".
root@localhost:/obs-studio/build#


----------



## fishxz (Apr 26, 2015)

so many debian posts here and everyone seems to have a different problem. i really hope to see obs for debian soon :/


----------



## Sunniboi (Apr 26, 2015)

I have one Idea Make clean  Make Stop   And than Trash all ! This ist not really! Thanks!


----------



## Osiris (Apr 26, 2015)

Ejk said:


> On debian 7.8 wheezy:
> Cmake-2.8.12 is only aviable on i386 and x86-64, on others the newest version is 2.8.9.
> Should I try to update to jessie?



Just use wheezy-backports it has a more recent cmake.


----------



## Ejk (Apr 27, 2015)

Osiris said:


> Just use wheezy-backports it has a more recent cmake.


Wheezy-backports only got 2.8.11, when it needs 2.8.12. Anyways, I installed 3.0.2. from jessie (I didn't update the whole system).

Edit: just read the first post for another time and saw that I should have made the folder "obs-studio" in the folder "FFMpeg". Will be moving and compiling when I get some spare time

Edit2: Changing /obs-studio to /ffmpeg/obs-studio didn't change a thing. Still getting " xcb_randr_found" not found

Edit3: Found out that my hardware doesn't got linux drivers supporting opengl 3.2


----------



## nifker13 (May 17, 2015)

What can I do if I get this error:

```
Linking C shared library libobs.so
/usr/bin/ld: /usr/local/lib/../lib/libavcodec.a(avpacket.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/../lib/libavcodec.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
libobs/CMakeFiles/libobs.dir/build.make:1591: recipe for target 'libobs/libobs.so.0' failed
make[2]: *** [libobs/libobs.so.0] Error 1
CMakeFiles/Makefile2:280: recipe for target 'libobs/CMakeFiles/libobs.dir/all' failed
make[1]: *** [libobs/CMakeFiles/libobs.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
make: *** [all] Error 2
```


----------



## Osiris (May 17, 2015)

recompile ffmpeg with -fPIC


----------



## nifker13 (May 20, 2015)

make: PIC: file or directory cannot be found
make: *** No rule to make target 'PIC'. End.


----------



## iohzrd (Jul 19, 2015)

I am up and running on Debian Jessie 8.1 X64. Took me a while to get it right. This is what I did. It should work as a script as well.

sudo apt-get install deb-multimedia-keyring

sudo sh -c 'echo "deb http://www.deb-multimedia.org jessie main non-free" >> /etc/apt/sources.list'

sudo apt-get update

sudo apt-get install autoconf automake build-essential checkinstall cmake git libass-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev libgl1-mesa-dev libjack-jackd2-dev libopus-dev libpostproc53 libpulse-dev libqt5x11extras5-dev libsdl1.2-dev libtheora-dev libtool libudev-dev libv4l-dev libva-dev libvdpau-dev libvorbis-dev libx11-dev libx264-dev libxcb-shm0-dev libxcb-xfixes0-dev libxcb-xinerama0-dev libxcb1-dev libxcomposite-dev libxinerama-dev pkg-config qtbase5-dev texi2html yasm zlib1g-dev

cd

git clone git://source.ffmpeg.org/ffmpeg.git

cd ffmpeg

./configure --enable-shared  --enable-gpl --enable-libass --enable-libfreetype --enable-libopus --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --disable-static

make -j4

sudo checkinstall --pkgname=FFmpeg --fstrans=no --backup=no --pkgversion="$(date +%Y%m%d)-git" --deldoc=yes

cd

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


----------



## xgab1 (Jan 6, 2016)

iohzrd said:


> I am up and running on Debian Jessie 8.1 X64. Took me a while to get it right. This is what I did. It should work as a script as well.
> 
> sudo apt-get install deb-multimedia-keyring
> 
> ...


Managed to do it using your instructions! I just needed to to an "ldconfig" after everything because of a library thingy. (I'm really new in linux)


----------



## XaviaX Star (Jan 10, 2016)

Hello guys!

I'm new to Open Broadcaster Software, I want to install it on a Debian testing/stretch. How to install clean & easy? The last post is one and a half year old already, are there any good ways available in 2016?

I've installed the .deb package from the autor of this thread which is already more than a year old - after starting it it says "
obs: error while loading shared libraries: libQt5Widgets.so.5: cannot open shared object file: No such file or directory". It seems I have to install the Qt5 from the native source like described throughout this thread.

It would be nice to get a great answer. Thank you very much!

Best wishes

XaviaX Star


----------



## nifker13 (Jan 28, 2016)

I tried to compile it with the ffmpeg by debian but cmake says that it isnt installed:



CMake Error at /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
  Could NOT find FFmpeg (missing: FFMPEG_AVCODEC_LIBRARIES
  FFMPEG_AVCODEC_INCLUDE_DIRS avcodec avfilter avdevice avutil swscale
  avformat swresample)
Call Stack (most recent call first):
  /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindFFmpeg.cmake:147 (find_package_handle_standard_args)
  deps/libff/CMakeLists.txt:4 (find_package)


----------



## nifker13 (Jan 28, 2016)

XaviaX Star said:


> Hello guys!
> 
> I'm new to Open Broadcaster Software, I want to install it on a Debian testing/stretch. How to install clean & easy? The last post is one and a half year old already, are there any good ways available in 2016?
> 
> ...



Try this: "# ln ./usr/lib/x86_64-linux-gnu/libQt5Widgets.so ./usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5"


----------



## Kesavan (Jun 7, 2017)

Hi guys!

i am using Raspberry pi 3 with Rasbian OS.

when i install the command "sudo cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTAL"
i am getting below error. Please help me.


pi@raspberrypi:~/obs-studio/build $ sudo cmake -DUNIX_STRUCTURE=1 -DCMAKE_INSTALL_PREFIX=/usr ..
-- OBS_VERSION: 19.0.2-20-ga4f9ce9
-- Could NOT find OpenGL (missing:  OPENGL_gl_LIBRARY OPENGL_INCLUDE_DIR) 
CMake Error at /usr/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Libcurl (missing: CURL_LIB CURL_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindLibcurl.cmake:64 (find_package_handle_standard_args)
  deps/file-updater/CMakeLists.txt:3 (find_package)


CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
/home/pi/obs-studio/deps/glad/OPENGL_INCLUDE_DIR
   used as include directory in directory /home/pi/obs-studio/deps/glad
/home/pi/obs-studio/deps/glad/X11_X11_INCLUDE_PATH
   used as include directory in directory /home/pi/obs-studio/deps/glad
OPENGL_gl_LIBRARY (ADVANCED)
    linked by target "glad" in directory /home/pi/obs-studio/deps/glad
X11_X11_LIB (ADVANCED)
    linked by target "glad" in directory /home/pi/obs-studio/deps/glad

-- Configuring incomplete, errors occurred!
See also "/home/pi/obs-studio/build/CMakeFiles/CMakeOutput.log".


----------



## mediathreat (Mar 31, 2018)

has anyone figure out how to fix this error:
By not providing "FindPulseAudio.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "PulseAudio", but CMake did not find one.

  Could not find a package configuration file provided by "PulseAudio" with
  any of the following names:

    PulseAudioConfig.cmake
    pulseaudio-config.cmake

  Add the installation prefix of "PulseAudio" to CMAKE_PREFIX_PATH or set
  "PulseAudio_DIR" to a directory containing one of the above files.  If
  "PulseAudio" provides a separate development package or SDK, be sure it has
  been installed.


-- Using libavcodec for image loading in libobs
-- Found FFmpeg: /usr/local/lib/../lib/libavcodec.a (found version "54.59.100") found components:  avcodec avutil avformat
-- XCB[XCB]: Found component XCB
-- XCB[SHM]: Found component SHM
-- Could NOT find XCB_XFIXES (missing:  XCB_XFIXES_LIBRARY XCB_XFIXES_INCLUDE_DIR)
-- XCB[XINERAMA]: Found component XINERAMA
CMake Error at /opt/cmake-3.0.2-Linux-i386/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
  Could NOT find XCB (missing: XCB_XFIXES_FOUND)
Call Stack (most recent call first):
  /opt/cmake-3.0.2-Linux-i386/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindXCB.cmake:239 (find_package_handle_standard_args)
  plugins/linux-capture/CMakeLists.txt:9 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/mvgen/obs-studio/build/CMakeFiles/CMakeOutput.log".
See also "/home/mvgen/obs-studio/build/CMakeFiles/CMakeError.log".​


----------



## Osiris (Apr 1, 2018)

You didn't install the pulse dev package.


----------



## dodgepong (Apr 2, 2018)

Moving this to the general development forum.


----------



## basiekjsuz (Apr 18, 2018)

Hi, I've got a problem with compiling it for Debian. I did everything like here, but on the last step (checkinstall), I have output like this:

Makefile:582: recipe for target 'cmake_check_build_system' failed make: *** [cmake_check_build_system] Segmentation fault

**** Installation failed. Aborting package creation.

What should I do about that?


----------

