Debian编译OBS StreamFX时缺失OBS::libobs的解决求助
解决Debian编译StreamFX时CMake找不到OBS::libobs的问题
先搞懂OBS::libobs是什么
OBS::libobs是CMake的命名空间导入目标,::用来分隔命名空间(OBS)和具体的库目标(libobs)。这类目标不需要手动指定路径,而是由OBS的CMake配置文件导出,CMake会通过这些配置文件自动识别库的路径、编译参数等信息。
具体解决步骤
1. 优先安装OBS官方开发包(最简单方案)
Debian仓库提供了OBS的开发包,安装后会自动配置好CMake可识别的OBS::libobs目标:
sudo apt update && sudo apt install libobs-dev
安装完成后,清理之前的构建目录,重新执行CMake:
rm -rf build && mkdir build && cd build cmake ../obs-streamfx
2. 若使用源码编译的OBS
如果你是自行编译OBS而非使用系统包,需确保OBS已正确安装,并告知StreamFX的CMake去哪里找OBS的配置文件:
- 编译OBS时,确保安装路径正确(默认是
/usr/local),安装完成后,OBS的CMake配置文件会存放在/usr/local/lib/cmake/OBS目录下 - 编译StreamFX时,通过
OBS_DIR参数指定该配置目录:
rm -rf build && mkdir build && cd build cmake -DOBS_DIR=/usr/local/lib/cmake/OBS ../obs-streamfx
3. 纠正之前的错误操作
不要直接修改StreamFX的CMakeLists.txt中的libobs_DIR,StreamFX的CMake脚本通过OBS_DIR参数查找OBS配置,手动修改libobs_DIR会破坏原有逻辑。
内容的提问来源于stack exchange,提问作者Candy Sweetnuss
相关产品推荐
相关产品推荐

