由于工作相关性,想学习一下OBS的相关技术,所以开始手动编译OBS工程,借鉴了一篇博文,写得比较清楚,但是在我编译过车过中出现了两个小问题,现在记录一下。
首先贴出来参考的博客,里面介绍的路子本人试验下来没有问题
其中,我遇到的问题主要是两个,一个是在使用CMake生成工程的时候,选择了XCode的类型,但是提示找不到默认的编译器,报错信息如下:
No CMAKE_C_COMPILER could be found.
No CMAKE_CXX_COMPILER could be found.
在一个问答中找到了解决方法:
主要原因应该就是需要安装Xcode的命令行工具,选择Xcode为编译环境,就可以了(如果本人理解不对,谢谢指正),如果没有安装XCode命令行工具,如下:
xcode-select --install # Install Command Line Tools if you haven't already. sudo xcode-select --switch /Library/Developer/CommandLineTools # Enable command line tools
如果已经安装的话,直接执行:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
然后在重新使用Cmake,这个问题就解决了。
然后还有一个问题,我也看到有同仁跟我一样遇到过,就是拉取代码的时候,依赖库没有拉完整,导致生成项目的时候不能通过,报错如下:
CMake Error at plugins/mac-syphon/CMakeLists.txt:71 (add_library): Cannot find source file: syphon-framework/Syphon_Prefix.pch。。。。。。。
这个的原因其实就是在OBS代码里面,mac-syphon这个库本身是属于另一个git仓库,所以直接使用git clone去克隆OBS的话,会跳过这个git仓库,所以拉取代码的时候,应该加上一个命令,如下:
git clone --recursive https://github.com/obsproject/obs-studio.git
这样,就好了,具体更多的相关可以参考下面这个链接:
后面有时间学习具体代码,再一起深入看看OBS吧!