尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

从源码编译OpenPHT:Linux/macOS/Windows三平台CMake构建完整指南

从源码编译OpenPHT:Linux/macOS/Windows三平台CMake构建完整指南 从源码编译OpenPHTLinux/macOS/Windows三平台CMake构建完整指南【免费下载链接】OpenPHTOpenPHT is a community driven fork of Plex Home Theater项目地址: https://gitcode.com/gh_mirrors/op/OpenPHTOpenPHT 是一款社区驱动的 Plex Home TheaterPHT开源分支本文带你使用 CMake 构建工具在 Linux、macOS、Windows 三大平台上完成 OpenPHT 媒体播放器的源码编译。无论你是想定制皮肤、修补旧版本还是学习大型 C 项目的 CMake 工程实践这份完整指南都能帮你快速上手。为什么选择从源码编译OpenPHT官方预编译包只提供有限的平台支持而从源码编译 OpenPHT 可以获得以下好处完全定制通过 CMake 开关自由启用/禁用 DVD 光驱、Python 插件、硬件解码等功能环境适配老版播放器基于 XBMC Frodo 内核在新系统上往往无法直接运行源码编译是最可靠的方案学习价值完整的 CMake 工程结构包含 plex/CMakeModules/ 下 60 多个自定义 Find 模块是学习跨平台构建的绝佳范例第一步获取源码并安装工具链克隆源码仓库使用 git 获取 OpenPHT 源码git clone https://gitcode.com/gh_mirrors/op/OpenPHT cd OpenPHT各平台必备工具平台必备工具Linuxcmake、g/clang、git、ninja推荐构建更快、nasm/yasm编译内置 FFmpegmacOSXcode含命令行工具、Homebrew、git、cmake、gnu-tar、xzWindowsVisual Studio 2012、CMake、Git、DirectX 9 SDKmacOS 上可通过 Homebrew 一键安装brew install cmake gnu-tar xz ninja认识OpenPHT的CMake关键选项OpenPHT 的 CMake 工程由根目录 CMakeLists.txt 驱动配合 plex/CMakeModules/CMakeConfig.cmake 识别目标平台。以下选项在三个平台通用CMAKE_BUILD_TYPE不指定时默认Debug正式发布建议设为ReleaseCOMPRESS_TEXTURES[on/off]是否压缩皮肤纹理耗时较长开发调试建议关闭CREATE_BUNDLE[on/off]是否生成最终发布包并签名一般建议关闭ENABLE_AUTOUPDATE[on/off]自动更新功能Linux 上无效应关闭ENABLE_DUMP_SYMBOLS[on/off]崩溃报告系统开发构建建议关闭CMAKE_INSTALL_PREFIXmake install的安装目标路径官方开发者推荐的本地构建命令见 README-BUILD-PLEX.mdcmake -GNinja -DCMAKE_INSTALL_PREFIX/usr/local/PlexHomeTheater \ -DCOMPRESS_TEXTURESoff -DCREATE_BUNDLEoff -DENABLE_DUMP_SYMBOLSoff ..Linux平台CMake编译步骤1. 安装系统依赖库Linux 平台采用「系统库 内置 FFmpeg」的方式依赖声明在 plex/CMakeModules/PlatformConfigLINUX.cmake 中。Ubuntu/Debian 下可参考 docs/README.linux 的包清单核心依赖包括sudo apt-get install cmake g git ninja-build nasm yasm \ libfreetype6-dev libsdl1.2-dev libgl1-mesa-dev libglew-dev \ libsqlite3-dev libpcre3-dev liblzo2-dev libfribidi-dev \ libfontconfig1-dev libyajl-dev libmicrohttpd-dev libssl-dev \ libtinyxml-dev libavahi-client-dev libxrandr-dev libflac-dev \ libdbus-1-dev libdrm-dev libboost-all-dev libcurl4-openssl-dev \ libpng-dev libtiff-dev libvorbis-dev libmpeg2-4-dev libass-dev \ librtmp-dev libplist-dev libva-dev libvdpau-dev libcec-dev 小技巧频繁编译者建议安装ccache可显著加速重复构建。2. 配置并编译mkdir build cd build cmake -GNinja -DCMAKE_BUILD_TYPERelease \ -DCMAKE_INSTALL_PREFIX/usr/local/openpht \ -DCOMPRESS_TEXTURESoff -DCREATE_BUNDLEoff \ -DENABLE_AUTOUPDATEoff -DENABLE_DUMP_SYMBOLSoff .. ninja -j$(nproc) sudo ninja install3. 运行OpenPHTLinux 下可执行文件名为plexhometheater安装时还会生成便捷的openpht启动脚本由 plex/Resources/openpht.sh.in 模板生成。直接运行即可openpht如需硬件加速可在 设置 → 视频 → 播放器 中把渲染方式从「自动检测」改为VDPAU或VA-API。macOS平台CMake编译步骤macOS 是 OpenPHT 体验最完整的平台依赖库通过预编译包或本地构建提供。1. 准备依赖库CMake 配置阶段会自动从官方源拉取预编译依赖若拉取失败可手动构建plex/scripts/build_osx_depends.sh osx64 # 64位构建该脚本耗时较长完成后重跑 CMake 即会自动使用本地依赖。依赖下载逻辑见 plex/scripts/fetch-depends.sh。2. 方式一Ninja 命令行构建更快mkdir pht-build cd pht-build cmake -GNinja -DCMAKE_BUILD_TYPERelease \ -DCOMPRESS_TEXTURESoff -DCREATE_BUNDLEoff .. ninja install3. 方式二Xcode 工程构建便于调试mkdir pht-xcode-build cd pht-xcode-build cmake -GXcode -DCOMPRESS_TEXTURESoff -DCREATE_BUNDLEoff ..生成后打开PlexHomeTheater.xcodeproj选择Install目标构建即可。产物为标准的OpenPHT.app应用包结构由 plex/CMakeModules/PlatformConfigOSX.cmake 定义Contents/MacOSX/—— 主程序Contents/Frameworks/—— 依赖动态库Contents/Resources/XBMC/—— 皮肤、字体等资源Windows平台CMake编译步骤1. 安装构建环境Visual Studio 2012Express 或 Pro 均可CMake含 CMakeGUIGitDirectX 9 SDK2. 拉取预编译依赖运行仓库自带的 Windows 依赖获取脚本并等待完成plex\scripts\fetch-depends-windows.bat3. CMakeGUI 配置打开 CMakeGUI指定源码目录新建独立的 build 目录工具链选择 Visual Studio 11点击Configure按需调整上文提到的通用选项点击Generate生成 Visual Studio 工程打开生成的.sln解决方案右键Build即可⚠️ 注意Windows 构建强依赖 DirectX SDK 头文件见根 CMakeLists.txt 中的 DirectX Include 路径安装位置须保持默认路径否则会因找不到d3d9.h等头文件而失败。常见问题排查清单问题现象解决方法CMake 报缺少某库如Could NOT find PCRE按报错安装对应-dev/开发头文件包重跑 CMake构建内置 FFmpeg 失败确认已安装 nasm 或 yasm或设-DUSE_INTERNAL_FFMPEGOFF改用系统 FFmpeg编译特别慢改用 Ninja 生成器并用ninja -j$(nproc)并行编译安装 ccachemacOS 报依赖缺失先执行plex/scripts/build_osx_depends.sh osx64构建本地依赖想启用 Python 插件配置时加-DENABLE_PYTHONON默认关闭想支持 DVD 光驱安装 libcdio 后加-DENABLE_DVD_DRIVEON默认关闭总结至此你已经掌握了 OpenPHT 在三大平台上的 CMake 源码编译全流程克隆源码→git clone获取完整工程安装依赖→ Linux 装系统开发包macOS/Windows 用仓库自带脚本拉取依赖CMake 配置→ 用 Ninja 或平台原生生成器按需开关功能编译安装→ninja install或 VS/Xcode 构建运行验证→ 执行openpht或OpenPHT.app完成验证编译完成后你还可以深入 plex/ 目录下的 Plex 客户端逻辑Home、Owned、Playlists 等模块或 xbmc/ 内核代码进行二次开发。祝编译顺利享受自己构建的 OpenPHT 播放体验【免费下载链接】OpenPHTOpenPHT is a community driven fork of Plex Home Theater项目地址: https://gitcode.com/gh_mirrors/op/OpenPHT创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表