Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update install instructions for OS X #45

Closed
wants to merge 1 commit into from
Closed

Update install instructions for OS X #45

wants to merge 1 commit into from

Conversation

andy-kliman
Copy link
Contributor

I adjusted the instruction compile the project under os x. correct me if something is not right

@OBSJenkins
Copy link

Can one of the admins verify this patch?

@jp9000
Copy link
Member

jp9000 commented Feb 23, 2014

There are a few things:

  • I don't know if Qt5 is available with brew/macports. You can also download it direct from qt's website, which is what I did.
  • Why the part about CMAKE_PREFIX_PATH?
  • cpack doesn't actually seem to create a fully proper app bundle right now. install_name_tool doesn't seem to be used for certain dependencies, and I don't think it's getting called for the plugin. I had to make a script to handle it.

@jp9000
Copy link
Member

jp9000 commented Feb 23, 2014

Right now what I do with cmake is create a "debug", "release", or "builds" directory within the main obs-studio directory (which are ignored by .gitignore), then just call "cmake ..", which builds everything.

For building the full package, it's.. still not working right. I'm not sure if it's worth mentioning yet at this point.

@andy-kliman
Copy link
Contributor Author

Okay, I get it. By the way, "brew install qt5" works for me.

@technodude458
Copy link

what do you mean by change to desktop - cd ~/Desktop
clone repo - git clone https://github.com/jp9000/obs-studio.git (when finished this should give you an obs-studio folder)
change to into the obs-studio folder - cd obs-studio
create a cmbuild folder - mkdir cmbuild
and change to it - cd cmbuild
then run the following command - cmake .. && make && clack i cloned it to the desktop and now I'm kinda confused

@dalekurt
Copy link

Here is what I have done for my build, I'm not sure what the "clack" command is
cmake .. && make && make package

@shaqaruden
Copy link

Cd means change directory. You use the 'cd' command navigate into a directory

@technodude458
Copy link

just started to figure it out in terminal i had forgotten the cd command existed

@shaqaruden
Copy link

Was typing on my iphone must have been an auto correct or something

@technodude458
Copy link

i just got this
screen shot 2014-05-13 at 1 54 49 pm

@technodude458
Copy link

help

@shaqaruden
Copy link

I have posted install instructions a few comments above. You may need to restart terminal after setting the CMAKE_PREFIX_PATH

@dalekurt
Copy link

If you have homebrew installed you should run the command
brew install qt5

Make sure you have the latest commit to the master, I think the developers fixed the issue for Qt5

@technodude458
Copy link

did that

@technodude458
Copy link

one second

@technodude458
Copy link

not working

@shaqaruden
Copy link

What did you try? Did you set the CMAKE_PREFIX_PATH?

@dalekurt
Copy link

Run git pull the run your cmake ..&& make && make package again, if you still get the error message as before then you should edit the obs/CMakeList.txt. Add the line:
set (CMAKE_PREFIX_PATH "/usr/local/Cellar/qt5/5.2.1/lib/cmake/Qt5Widgets")
Above this line
find_package(Qt5Widgets REQUIRED)

@dodgepong
Copy link
Member

Also @technodude458 this is not a chat room. It would be better if you wrote out complete responses, explaining your actions and the exact issues you're having, rather than spamming 2-word replies.

If you want a chat room, come to the #obs-dev IRC channel on Quakenet. Or if you feel that this compilation process is too complicated, then just wait until a public build is made available.

@technodude458
Copy link

i tried don't know if it worked I'm not seeing find_package(Qt5Widgets REQUIRED) in the cmakelist.txt document

@technodude458
Copy link

i was having trouble setting the cmake_prefix_path

@technodude458
Copy link

i tried that silly

@technodude458
Copy link

it doesn't exist

@Ambrosia
Copy link

Please go to IRC, you're spamming everyone's email.

@technodude458
Copy link

and thats how i feel every day

@shaqaruden
Copy link

I put the command in that you need in my early post. —
Sent from Mailbox

On Tue, May 13, 2014 at 2:17 PM, Ambrosia notifications@github.com
wrote:

Please go to IRC, you're spamming everyone's email.

Reply to this email directly or view it on GitHub:
#45 (comment)

Waik0 added a commit to Waik0/obs-studio that referenced this pull request May 1, 2020
# This is the 1st commit message:

rtmp-services: Modify showroom setting

Change recommend format and url.
Extend curl Timeout span.

# This is the commit message obsproject#2:

rtmp-services: remove unused code

# This is the commit message obsproject#3:

rtmp-services: showroom support autoconfig ui

# This is the commit message obsproject#4:

rtmp-services: clang format

# This is the commit message obsproject#5:

rtmp-services: Add WASDTV (obsproject#2697)


# This is the commit message obsproject#6:

CI: Add freetype dep on osx


# This is the commit message obsproject#7:

libobs: Fix plugin folder search path case on macOS

# This is the commit message obsproject#8:

linux-v4l2: Fix build with Clang 10.0

add_control_property() was previously static inline bool, but did not
return a value and failed to build on FreeBSD-CURRENT with Clang 10.0,
with:

error: non-void function 'add_control_property' should return a value

# This is the commit message obsproject#9:

CI: Add qt5-xml package for FreeBSD build task

# This is the commit message obsproject#10:

rtmp-services: Update ChathostessModels service (obsproject#2745)


# This is the commit message obsproject#11:

libobs: Don't save removed sources

# This is the commit message obsproject#12:

obs-ffmpeg: Fix media source not closing file when inactive

# This is the commit message obsproject#13:

obs-browser: Fix formatting

# This is the commit message obsproject#14:

obs-vst: Fix formatting

# This is the commit message obsproject#15:

obs-qsv11: Enable QSV texture-based encoding

Enables a pipeline for texture-based encoding with QSV. Utilizes OBS
NV12 output for encode to avoid offloading them from GPU, which will
increase performance. The option to select old QSV pipeline still
remains and will fallback if new pipeline fails.

# This is the commit message obsproject#16:

UI: Remove all scenes in ClearSceneData

# This is the commit message obsproject#17:

UI: Fix previewLabel styling

Label renders with default styling instead of using dynamic property
because it was already polished.

# This is the commit message obsproject#18:

docs/sphinx: Add Property Grouping

# This is the commit message obsproject#19:

plugins: Build ALSA plugin for FreeBSD

Signed-off-by: Hans Petter Selasky <hps@selasky.org>

# This is the commit message obsproject#20:

UI: Adjust a few margins

-Remove 9px margins around central widget. This saves 18px of vertical
space. This will be helpful when the source context menu is added,
which is 24px tall.

-Adjusts margins in transitions dock. The top of the transitions dock
wasn't lined up with the top of the controls dock, which made it look
bad.

# This is the commit message obsproject#21:

UI: Add status icons for recording and streaming

# This is the commit message obsproject#22:

CMake: Build Windows modules with file descriptors

# This is the commit message obsproject#23:

mac-capture: Use window id to identify windows on MacOS

Use a window's window id in init_window in the mac window capture plugin.

# This is the commit message obsproject#24:

mac-capture: Only find window by window id when owner name and pid match

# This is the commit message obsproject#25:

mac-capture: Use int in place of NSNumber for owner_pid

# This is the commit message obsproject#26:

mac-capture: update owner_pid in `update_window`

# This is the commit message obsproject#27:

CI: Add main Github Actions workflow for branch pushes and PRs

# This is the commit message obsproject#28:

UI: Remove unnecessary global variables

# This is the commit message obsproject#29:

Revert "UI: Remove unnecessary global variables"

This reverts commit f91d3ba.

From @pkv: the reason some of these vars were global is because Qt was not deleting them at all; as a result memory leaks have been reintroduced for: previewProjector, trayMenu, studioProgramProjector, multiviewProjectorMenu ;

# This is the commit message obsproject#30:

libobs-opengl: Fix viewport flip

Flip viewport in coordination with update_viewproj_matrix.

# This is the commit message obsproject#31:

UI: Add white icons for dock titles

- Add pop-out and close svg icons
- Update all dark themes qss with the new icons

# This is the commit message obsproject#32:

rtmp-services: Change Stripchat streaming service

# This is the commit message obsproject#33:

rtmp-services: Add VirtWish service

# This is the commit message obsproject#34:

UI: Update OSX to macOS in English translation

# This is the commit message obsproject#35:

obs-browser, obs-vst: Fix formatting

# This is the commit message obsproject#36:

CI: Fix Azure Pipelines macOS runs

# This is the commit message obsproject#37:

obs-filters: Add a user label to the LUT filter

While discussing the Flatpak RFC [1], it was spotted that the
LUT filter couldn't open the file selection dialog. It was
explained, then, that the proper formats were either composed
of "User Label (file extensions)", or "file extensions", and
the LUT filter was setting "(file extensions)" without the
actual user label.

While this works on a standard Qt file selection dialog, it
cannot be properly formatted as a set of D-Bus filters, thus
breaking the sandbox integration.

Add a simple user label to the LUT file filter.

[1] obsproject/rfcs#21 (comment)

# This is the commit message obsproject#38:

UI: Remove requirement for replay buffer hotkey

Fixes obsproject#2807

# This is the commit message obsproject#39:

obs-ffmpeg: Log why new NVENC might not be used

# This is the commit message obsproject#40:

obs-ffmpeg: Preserve error message from new NVENC

If we fallback to ffmpeg NVENC, the error from new NVENC might still be
present in the encoder structure. Given that this provides a lot more
actionable information to the user, let's use it if possible.

# This is the commit message obsproject#41:

libobs: Clear last error on encoder shutdown

This fixes an issue where an encoder may error out on a path that
doesn't use obs_encoder_set_last_error, resulting in a stale error being
used.

# This is the commit message obsproject#42:

obs-ffmpeg: Add localization for NVENC error messages

# This is the commit message obsproject#43:

obs-ffmpeg: Add error message for non-zero GPU

# This is the commit message obsproject#44:

CI: Update macOS deps to fix lua

# This is the commit message obsproject#45:

vlc-video: Enable building the plugin on FreeBSD
Waik0 added a commit to Waik0/obs-studio that referenced this pull request May 1, 2020
# This is the 1st commit message:

rtmp-services: add showroom setting

# This is the commit message obsproject#2:

rtmp-services: Modify showroom setting

Change recommend format and url.
Extend curl Timeout span.

# This is the commit message obsproject#3:

rtmp-services: remove unused code

# This is the commit message obsproject#4:

rtmp-services: showroom support autoconfig ui

# This is the commit message obsproject#5:

rtmp-services: clang format

# This is the commit message obsproject#6:

rtmp-services: Add WASDTV (obsproject#2697)


# This is the commit message obsproject#7:

CI: Add freetype dep on osx


# This is the commit message obsproject#8:

libobs: Fix plugin folder search path case on macOS

# This is the commit message obsproject#9:

linux-v4l2: Fix build with Clang 10.0

add_control_property() was previously static inline bool, but did not
return a value and failed to build on FreeBSD-CURRENT with Clang 10.0,
with:

error: non-void function 'add_control_property' should return a value

# This is the commit message obsproject#10:

CI: Add qt5-xml package for FreeBSD build task

# This is the commit message obsproject#11:

rtmp-services: Update ChathostessModels service (obsproject#2745)


# This is the commit message obsproject#12:

libobs: Don't save removed sources

# This is the commit message obsproject#13:

obs-ffmpeg: Fix media source not closing file when inactive

# This is the commit message obsproject#14:

obs-browser: Fix formatting

# This is the commit message obsproject#15:

obs-vst: Fix formatting

# This is the commit message obsproject#16:

obs-qsv11: Enable QSV texture-based encoding

Enables a pipeline for texture-based encoding with QSV. Utilizes OBS
NV12 output for encode to avoid offloading them from GPU, which will
increase performance. The option to select old QSV pipeline still
remains and will fallback if new pipeline fails.

# This is the commit message obsproject#17:

UI: Remove all scenes in ClearSceneData

# This is the commit message obsproject#18:

UI: Fix previewLabel styling

Label renders with default styling instead of using dynamic property
because it was already polished.

# This is the commit message obsproject#19:

docs/sphinx: Add Property Grouping

# This is the commit message obsproject#20:

plugins: Build ALSA plugin for FreeBSD

Signed-off-by: Hans Petter Selasky <hps@selasky.org>

# This is the commit message obsproject#21:

UI: Adjust a few margins

-Remove 9px margins around central widget. This saves 18px of vertical
space. This will be helpful when the source context menu is added,
which is 24px tall.

-Adjusts margins in transitions dock. The top of the transitions dock
wasn't lined up with the top of the controls dock, which made it look
bad.

# This is the commit message obsproject#22:

UI: Add status icons for recording and streaming

# This is the commit message obsproject#23:

CMake: Build Windows modules with file descriptors

# This is the commit message obsproject#24:

mac-capture: Use window id to identify windows on MacOS

Use a window's window id in init_window in the mac window capture plugin.

# This is the commit message obsproject#25:

mac-capture: Only find window by window id when owner name and pid match

# This is the commit message obsproject#26:

mac-capture: Use int in place of NSNumber for owner_pid

# This is the commit message obsproject#27:

mac-capture: update owner_pid in `update_window`

# This is the commit message obsproject#28:

CI: Add main Github Actions workflow for branch pushes and PRs

# This is the commit message obsproject#29:

UI: Remove unnecessary global variables

# This is the commit message obsproject#30:

Revert "UI: Remove unnecessary global variables"

This reverts commit f91d3ba.

From @pkv: the reason some of these vars were global is because Qt was not deleting them at all; as a result memory leaks have been reintroduced for: previewProjector, trayMenu, studioProgramProjector, multiviewProjectorMenu ;

# This is the commit message obsproject#31:

libobs-opengl: Fix viewport flip

Flip viewport in coordination with update_viewproj_matrix.

# This is the commit message obsproject#32:

UI: Add white icons for dock titles

- Add pop-out and close svg icons
- Update all dark themes qss with the new icons

# This is the commit message obsproject#33:

rtmp-services: Change Stripchat streaming service

# This is the commit message obsproject#34:

rtmp-services: Add VirtWish service

# This is the commit message obsproject#35:

UI: Update OSX to macOS in English translation

# This is the commit message obsproject#36:

obs-browser, obs-vst: Fix formatting

# This is the commit message obsproject#37:

CI: Fix Azure Pipelines macOS runs

# This is the commit message obsproject#38:

obs-filters: Add a user label to the LUT filter

While discussing the Flatpak RFC [1], it was spotted that the
LUT filter couldn't open the file selection dialog. It was
explained, then, that the proper formats were either composed
of "User Label (file extensions)", or "file extensions", and
the LUT filter was setting "(file extensions)" without the
actual user label.

While this works on a standard Qt file selection dialog, it
cannot be properly formatted as a set of D-Bus filters, thus
breaking the sandbox integration.

Add a simple user label to the LUT file filter.

[1] obsproject/rfcs#21 (comment)

# This is the commit message obsproject#39:

UI: Remove requirement for replay buffer hotkey

Fixes obsproject#2807

# This is the commit message obsproject#40:

obs-ffmpeg: Log why new NVENC might not be used

# This is the commit message obsproject#41:

obs-ffmpeg: Preserve error message from new NVENC

If we fallback to ffmpeg NVENC, the error from new NVENC might still be
present in the encoder structure. Given that this provides a lot more
actionable information to the user, let's use it if possible.

# This is the commit message obsproject#42:

libobs: Clear last error on encoder shutdown

This fixes an issue where an encoder may error out on a path that
doesn't use obs_encoder_set_last_error, resulting in a stale error being
used.

# This is the commit message obsproject#43:

obs-ffmpeg: Add localization for NVENC error messages

# This is the commit message obsproject#44:

obs-ffmpeg: Add error message for non-zero GPU

# This is the commit message obsproject#45:

CI: Update macOS deps to fix lua

# This is the commit message obsproject#46:

vlc-video: Enable building the plugin on FreeBSD
notr1ch pushed a commit to notr1ch/obs-studio that referenced this pull request Aug 16, 2022
kc5nra pushed a commit to amazon-contributing/upstreaming-to-obs-studio that referenced this pull request Jan 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants