我尝试编译以获取Gerbera,一个流行的 DLNA 服务器运行证明是徒劳的。依赖项似乎没问题。该文档没有提到任何需要的 make 标志。因此,当我尝试制作时,构建达到 100%,然后失败
[100%]链接 CXX 可执行非洲菊带有以下消息:
/usr/bin/ld: liblibgerbera.a(sqlite_database.cc.o): 对符号'sqlite3_mprintf'的未定义引用 /usr/bin/ld: /lib/x86_64-linux-gnu/libsqlite3.so.0: 添加符号时出错:命令行中缺少 DSO clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用) make[2]: *** [CMakeFiles/gerbera.dir/build.make:98: gerbera] 错误 1 make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/gerbera.dir/all] 错误 2 make: *** [Makefile:130: all] 错误 2我不熟悉此类问题,因此如果有人向我解释,或者如果可能的话,帮助我解决它,我将不胜感激
我尝试根据标准说明进行构建,但也发现了问题。但是我确实设法最终构建它,如下所示:
安装依赖项
构建/安装 spdlog
在我的第一次“配置”期间,我收到一条消息,指出与 Ubuntu 提供的 spdlog 存在冲突。在这里,我们使用正确的标志集构建和安装我们自己的。
下载非洲菊
构建/安装 libupnp
Ubuntu 提供的库太旧了,所以我们需要构建和安装更新的版本。非洲菊源提供了一个脚本来为我们做这件事。
构建/安装非洲菊
从包含您下载的非洲菊根文件夹的文件夹中:
当我在全新安装的 Ubuntu 20.04 上尝试时,上述所有操作都有效。
选择
如果您不想自己构建非洲菊,可以使用 Ubuntu PPA。因此,您可以按如下方式轻松安装非洲菊: