当前位置: 首页 > news >正文

macOS上编译obs-studio

前言

    最近基于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工具

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

Configuring done
CMake Error at plugins/mac-syphon/CMakeLists.txt:19 (add_library):Cannot find source file:syphon-framework/Syphon_Prefix.pchCMake 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

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

编译

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

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

    解决办法:如提示,是因为缺少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

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

 

http://www.lryc.cn/news/140405.html

相关文章:

  • Oracle数据库快速入门
  • Linux内核学习(十)—— 块 I/O 层(基于Linux 2.6内核)
  • SpringMVC 写个 HelloWorld
  • ARM--day7(cortex_M4核LED实验流程、异常源、异常处理模式、异常向量表、异常处理流程、软中断编程、cortex_A7核中断实验)
  • Java中LinkList的基本介绍和细节讨论。双向链表的代码和LinkList的源码。LinkList和ArrayList的比较与选择。
  • Proteus软件安装包分享(附安装教程)
  • “图为科技——什么是边缘计算“
  • SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)
  • mysql 错误码
  • HTML的form表单标签详解~
  • Kafka 消费者“group_name”组正在永远重新平衡
  • 高并发编程-3. Amdahl(阿姆达尔)定律与Gustafson定律
  • ffmpeg之常用的命令行参数
  • tomcat服务器
  • 【面试题】MVC、MVP与MVVM模式是什么?
  • 网络安全02-C段扫描、开放端口
  • vscode流程图插件使用
  • mysql数据导入导出参数说明
  • Qt——QLineEdit控件常见的属性、方法和信号
  • C语言:指针和数组(看完拿捏指针和数组)
  • Conda命令整理-自用版
  • CountDownLatch 和 CyclicBarrier的区别与详解
  • Vue子组件向父组件传值(this.$emit()方法)
  • 【C++】C/C++内存管理-new、delete
  • 高手进阶之路---pyqt自定义信号
  • 研磨设计模式day09原型模式
  • (二)Redis——List
  • 【Go Web 篇】Go 语言进行 Web 开发:构建高性能网络应用
  • 开悟Optimization guide for intermediate tracks
  • wx.request配置服务器域名,只能包含英文大小写字母、数字,解决办法