Question / Help 16.2 build availability for Mac

Grot

New Member
Hi there,
it's been quite a while now since we received our last OBS build for Mac. Theres a ton of upgrades and fixes in the last few versions, and somehow we are missing out on all of them.. When can we expect the new versions to become available ?

I did build 16.2 from the sources available on Git, but for some reason no text sources were available.. Lost in the build or something.

Please, let us enjoy the latest releases on Mac! :D
 

c3r1c3

Member
The build servers went down. Since this is an all volunteer effort someone had to step up and help out. While that has happened and we are moving to a new build setup there have been some issues with setting up support for pre-MacOS 10.10 (thanks Apple!). The good news is that the new setup will be a lot cooler from a dev/beta-tester POV. All of that said, when the new build server (at least for MacOS) is up and running, the new releases will start to flow again.

Now as to your issue with not having a text source option, are you using MacPorts or homebrew? With ether one you should install cmake-gui and the freetype2 libs. Run cmake-gui and see if it can pick up on the installed freetype2-libs, and if not, manually assign their location in the cmake-gui.

That should enable you to build Studio with Text Source support.
 

Grot

New Member
The build servers went down. Since this is an all volunteer effort someone had to step up and help out. While that has happened and we are moving to a new build setup there have been some issues with setting up support for pre-MacOS 10.10 (thanks Apple!). The good news is that the new setup will be a lot cooler from a dev/beta-tester POV. All of that said, when the new build server (at least for MacOS) is up and running, the new releases will start to flow again.

Now as to your issue with not having a text source option, are you using MacPorts or homebrew? With ether one you should install cmake-gui and the freetype2 libs. Run cmake-gui and see if it can pick up on the installed freetype2-libs, and if not, manually assign their location in the cmake-gui.

That should enable you to build Studio with Text Source support.

Hey, thanks for taking the time to reply!

I did use homebrew and followed the build instructions provided here: https://github.com/jp9000/obs-studio/wiki/Install-Instructions#mac-osx
Theres no mention of freetype2 there, and i guess that was the cause of my problem! Ill run the build again tomorrow and let you know how it goes :)

If everything goes well i might as well (if thats ok) post a link to a .dmg built on Sierra for anyone that (just as me) is anxious to get his hands on 16.2. I found that while my build worked fine on the machine i built it on, it would not run on a different machine with El Capitan.

Anyway, thanks for the help!
 

keybounce

Member
Ok, I'm going to try this.

Step 1: Verify what I have compared to the install file.
-- Add Qt5 (it's big)
-- update a bunch of outdated ports
Ohh, 800% CPU usage recompiling ffmpeg. I haven't seen my CPU fully active in a long time :-).
Hmm, git also? Why no pre-built binaries for those two?

OK, after doing an upgrade, two ports won't rebuild.
p5.16-parse-cpan-meta is replaced by the p5.22 version, but that itself is replaced by another, and it's just not updating properly.
And libhsplasma (used by Myst-online) is not compiling properly. I don't think either of these are show stoppers for OBS, so continuing ...

Step 2:
keybounceMBP:obs-studio michael$ mkdir build
keybounceMBP:obs-studio michael$ cd build
keybounceMBP:build michael$ cmake ..

...
-- Checking for module 'jack'
-- No package 'jack' found
-- Found jack: /usr/local/lib/libjack.dylib
...

/usr/local? Not /opt/local?
Looks like I installed the release from the jack website, rather than compiled.

Ok, so
Step 3: Make
... there's a bunch of deprecated warnings ...
Hmm, seems to have worked.

Step 4: make package
Step 5: install .dmg

... Ha! QJackCtl reports a "JACK Input Client" port on the "Reading" side. So no more fiddling with sound flower loopbacks, I can just make two jack inputs (one for game, one for skype).

Seems to be working, no issues.

... How "independent" is the .dmg that I built? Does it have any reliance on my system having stuff in /opt/local instead of /usr/local, or can I safely upload it for others?

EDIT: Or not -- I just got a crash from OBS, just sitting there, not actually doing anything. And, I'm not the only one that tried to compile this, but I'm using ports, not brew.
 

keybounce

Member
Data/stack execution???

Code:
Oct 23 15:54:12 keybounceMBP CEF Helper[45977]: AVF warning: failed to get a service for display id: 4128835
Oct 23 15:54:12 keybounceMBP CEF Helper[45977]: [1023/155412:WARNING:ipc_message_attachment_set.cc(57)] MessageAttachmentSet destroyed with unconsumed descriptors: 0/1
Oct 23 15:54:15 keybounceMBP coreservicesd[35]: Received request to reset fmod watch. Latest received id is 248543634478776. Latest sent id is 248543634478776
Oct 23 15:54:41 keybounceMBP WindowServer[144]: _CGXSetWindowHasKeyAppearance: Operation on a window 0x789 requiring rights kCGSWindowRightOwner by caller Dashboard
Oct 23 15:54:44 keybounceMBP mds[115]: (Normal) ImportServer: Ignoring blacklisted Spotlight importer plugin:/Developer/Applications/Xcode-foo.app/Contents/Library/Spotlight/SourceCode.mdimporter.DoNotUse uuid:548A3091-3C5D-498A-A329-B532A6C896BB version:1586
Oct 23 15:54:45 --- last message repeated 2 times ---
Oct 23 15:54:45 keybounceMBP WindowServer[144]: _CGXSetWindowHasKeyAppearance: Operation on a window 0x789 requiring rights kCGSWindowRightOwner by caller Dashboard
Oct 23 15:55:43 keybounceMBP mds[115]: (Normal) ImportServer: Ignoring blacklisted Spotlight importer plugin:/Developer/Applications/Xcode-foo.app/Contents/Library/Spotlight/SourceCode.mdimporter.DoNotUse uuid:548A3091-3C5D-498A-A329-B532A6C896BB version:1586
Oct 23 15:56:13 --- last message repeated 2 times ---
Oct 23 15:59:12 keybounceMBP kernel[0]: Data/Stack execution not permitted: obs[pid 45973] at virtual address 0x7f98d246f000, protections were read-write
Oct 23 15:59:13 keybounceMBP CEF[45976]: BUG in libdispatch client: kevent[EVFILT_WRITE] delete: "No such file or directory" - 0x2
Oct 23 15:59:13 keybounceMBP com.apple.launchd.peruser.502[227] (com.obsproject.obs-studio.244672[45973]): Job appears to have crashed: Bus error: 10
Oct 23 15:59:13 keybounceMBP CEF[45976]: Parent process died, exiting isolated CEF process.
Oct 23 15:59:13 keybounceMBP CEF[45976]: *** -[NSConditionLock dealloc]: lock (<NSConditionLock: 0x7fe07db05c80> '(null)') deallocated while still in use
Oct 23 15:59:13 keybounceMBP CEF[45976]: *** Break on _NSLockError() to debug.
Oct 23 15:59:13 keybounceMBP ReportCrash[46002]: Saved crash report for obs[45973] version 0 to /Users/michael/Library/Logs/DiagnosticReports/obs_2016-10-23-155913_keybounceMBP.crash
 

Grot

New Member
Hey, Ive built with FreeType installed this time and everything works almost like a charm. The 'almost' refers to a single crash when almost instantly after I first opened the app, related to an issue with the BrowserSource rendering.. On all following runs everything was fine - no more crashes of any kind.

I am happy to share the dmg i built with you guys, hope it works for you as well!

Built on MacOS Sierra: http://grothawk.com/obs-studio-x64-0.16.2-59-ga7ef10f.dmg

Please remember that you are running this at your own risk. I am by no means an expert in the field, just a guy that really wanted to get his hands on the Automatic Scene Switcher and a few other things ;)

G.
 
  • Like
Reactions: asq

keybounce

Member
Missing some libraries, crash on startup:

Crashed Thread: 0

Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
Library not loaded: /usr/local/opt/qt5/lib/QtWidgets.framework/Versions/5/QtWidgets
Referenced from: /Volumes/VOLUME/OBS.app/Contents/Resources/bin/obs
Reason: image not found
 

c3r1c3

Member
We have a python script that bundles up everything into the .dmg file... also another reason for the extra time it's taking to spin up a Mac builder is that packaging is...

I don't know. I'm not an expert on building .dmg/.mpkg/.pkg files. Never done it, so I can't really say much about it.

As to MacPorts and cmake-gui... I recall cmake and cmake-gui being separate installs, but maybe I'm wrong. It's best to check the MacPorts repository/library.

As to git... I thought was bundled with the OS... since OS X 10.8? (Maybe earlier?) Either way, install cmake and if that doesn't supply the gui, try looking in the repos for the correct package name.
 

keybounce

Member
The OS-supplied git is very old.

cmake-gui doesn't seem to be needed to compile OBS; at least, for me, normal cmake worked to generate a makefile. Of course, it didn't run properly, but that's another story.
 

Grot

New Member
@keybounce Looks like youre missing one of the libs that i installed prior to building the package. The guide i linked to before (https://github.com/jp9000/obs-studio/wiki/Install-Instructions#mac-osx) provides a pretty smooth explanation of the steps that you need to take. I used homebrew and installed FFmpeg, x264, Qt5 and cmake. Its as simple as running
Code:
brew install ffmpeg
brew install x264
brew install qt5
brew install cmake
brew install freetype

The guide worked fine for me. Hope it helps!

G.
 

keybounce

Member
@keybounce Looks like youre missing one of the libs that i installed prior to building the package. The guide i linked to before (https://github.com/jp9000/obs-studio/wiki/Install-Instructions#mac-osx) provides a pretty smooth explanation of the steps that you need to take. I used homebrew and installed FFmpeg, x264, Qt5 and cmake. Its as simple as running
Code:
brew install ffmpeg
brew install x264
brew install qt5
brew install cmake
brew install freetype

The guide worked fine for me. Hope it helps!

G.
You mid-understand. I have all those libraries installed.

Look again at what failed:

> Library not loaded: /usr/local/opt/qt5/lib/QtWidgets.framework/Versions/5/QtWidgets

My system:
Code:
keybounceMBP:build michael$ ls /opt/local/libexec/qt5/lib
total 7040
  0 Enginio.framework/  0 QtNfc.framework/  0 QtWebSockets.framework/
  0 QtBluetooth.framework/  0 QtOpenGL.framework/  0 QtWidgets.framework/
  0 QtCLucene.framework/  0 QtPositioning.framework/  0 QtXml.framework/
  0 QtConcurrent.framework/  0 QtPrintSupport.framework/  0 QtXmlPatterns.framework/
  0 QtCore.framework/  0 QtQml.framework/  0 cmake/
  0 QtDBus.framework/  0 QtQuick.framework/  2828 libQt5Bootstrap.a
  0 QtDesigner.framework/  0 QtQuickParticles.framework/  4 libQt5Bootstrap.prl
  0 QtDesignerComponents.framework/  0 QtQuickTest.framework/  824 libQt5OpenGLExtensions.a
  0 QtGui.framework/  0 QtQuickWidgets.framework/  4 libQt5OpenGLExtensions.prl
  0 QtHelp.framework/  0 QtSensors.framework/  980 libQt5PlatformSupport.a
  0 QtLocation.framework/  0 QtSerialPort.framework/  4 libQt5PlatformSupport.prl
  0 QtMacExtras.framework/  0 QtSql.framework/  1344 libQt5QmlDevTools.a
  0 QtMultimedia.framework/  0 QtSvg.framework/  4 libQt5QmlDevTools.prl
  0 QtMultimediaQuick_p.framework/  0 QtTest.framework/  1044 libQt5UiTools.a
  0 QtMultimediaWidgets.framework/  0 QtUiPlugin.framework/  4 libQt5UiTools.prl
  0 QtNetwork.framework/  0 QtWebChannel.framework/  0 pkgconfig/
keybounceMBP:build michael$ port installed qt5
The following ports are currently installed:
  qt5 @5.6.1_0 (active)
keybounceMBP:build michael$
It's there, but you have hardcoded library paths that cannot find the library in a different location.

EDIT: GRR. I've verified that I'm copy/pasting multiple spaces, but it won't accept multiple spaces.
 

dodgepong

Administrator
Community Helper
There is now an official build available with the latest version of the Browser Source.
 
Top