前言

    最近基于obs的1个二开程序,需要移植到macOS平台上,由于遇到些问题,本文记录下如何在macOS上配置&编译&运行obs程序完整过程。

下载

    首先下载cmake-gui工具,下载CMAKE,选择对应macOS平台的cmake版本,此处选择cmake-3.27.3-macos-universal.dmg 版本安装。

    其次,安装qt6.2开发包和qt creator开发工具,请参考安装qt一文,安装好qt开发包,此处选择qt6.3.2版本安装。

    再次,下载obs-studio源码,完整命令如下:

# 一定要加--recursive选项,以下载obs-studio依赖库
git clone --recursive https://github.com/obsproject/obs-studio.git
# 切分支
git checkout release/29.1
# 下载obs-studio相关依赖
git submodule init
git submodule update

    最后,请一定安装xcode集成开发环境,此处不再赘述。

配置

     使用cmake-gui工具macOS上编译obs-studio-LMLPHP

   问题:点击 Configure 之后,报错如下:

Configuring done
CMake Error at plugins/mac-syphon/CMakeLists.txt:19 (add_library):
  Cannot find source file:

    syphon-framework/Syphon_Prefix.pch


CMake Error at plugins/mac-syphon/CMakeLists.txt:19 (add_library):
  No SOURCES given to target: syphon-framework

     解决办法:进入到obs-studio根目录,执行如下命令,下载相关依赖:

git submodule init
git submodule update

macOS上编译obs-studio-LMLPHP

    如此,便可以configure和generate成功了。 

编译

    配置&生成xcode解决方案成功之后,点击 Open Project 用xcode集成开发环境打开obs-studio解决方案:

macOS上编译obs-studio-LMLPHP

    问题:编译时遇到一个问题,如下:

macOS上编译obs-studio-LMLPHP

    解决办法:如提示,是因为缺少libluajit.dylib库所致,执行如下命令安装:

brew install lua
copy /System/Volumes/Data/opt/homebrew/lib/libluajit.dylib /System/Volumes/Data/Users/mingo/Applications/workspace/multimedia/obs-studio/build_arm64/UI/Debug/OBS.app/Contents/Frameworks/libluajit.dylib

   再次编译,便可编译成功了。 

运行

    编译成功之后,执行如下操作,运行obs-studio程序:

xcode => Product => Scheme => Edit Scheme => Run => Info

macOS上编译obs-studio-LMLPHP

     参照如上配置,obs-studio程序便可成功运行起来了:

macOS上编译obs-studio-LMLPHP 

08-23 05:46