【发布时间】:2019-12-05 06:35:59
【问题描述】:
我目前正在使用 Python 构建一个用于教育目的的开源项目,我将把它添加到 Github 上。它使用 ffmpeg 库作为 64 位编译的 exe(我在 windows 上),通过在代码中使用命令行参数调用可执行文件。
我的问题是,如何处理其他人尝试使用我的代码的情况(比如说客户,即使没有)。因为他们还需要 ffmpeg 可执行文件。
- 包括 ffmpeg 可执行文件到 Github 存储库(似乎错误,也会 在多平台上失败)。
- 在代码开头添加依赖控制,通知用户他们应该下载可执行文件。 (会使用户 做一些工作)
- 创建存储此文件的安装程序(不知道如何与 github 结合)
在 linux 中,ffmpeg 本身可以作为库安装,将其添加为依赖项将在 linux 中工作,但是在 Windows 中,这需要将安装目录添加到 PATH(如果已安装,而不是在代码附近复制粘贴)。为用户做更多的工作。
ffmpeg 只是一个例子。我也对使用其他编译的二进制文件感到好奇(如果有其他使用这些项目的方法,我愿意接受建议)。
我还包括 ffmpeg 和 Python 作为标签,以防这些工具在这些情况下提供指导(在互联网上找不到,或者不知道去哪里找)。
【问题讨论】:
-
所以首先没有通用的答案。您需要查看您正在使用的工具/二进制文件的许可证。某些许可证会阻止您将可执行文件与您的代码一起发布,并且需要单独下载。此外,如果您是跨平台的,那么每个环境中的步骤会有所不同,因此您将记录如何在每个环境中设置可执行文件,或者如果您想让它变得简单,您将把它作为设置的一部分。这一切还取决于您要付出多少努力来让使用您的图书馆的人生活更轻松。
标签: python github ffmpeg dependencies dependency-management