gpt4 book ai didi

c++ - 如何通过cmake链接ffmpeg库?

转载 作者:行者123 更新时间:2023-11-28 07:28:11 29 4
gpt4 key购买 nike

我想在我的 C++ 程序中使用 ffmpeg 库。

我已经下载了ffmpeg源码。
在制作和编译过程中,我有这个错误:
UINT64_C 未定义!
经过一些搜索:

1.在libavutil/common.h中添加如下代码

#ifndef INT64_C
#define INT64_C(c) (c ## LL)
#define UINT64_C(c) (c ## ULL)
#endif

2../configure&compile解决了这个问题。

但现在我想通过使用 cmake 文件将这个库链接到一个简单的编码方法。
我已经尝试了一些 CMakeLists.txt 示例,但我仍然有
“ undefined reference ”错误
非常感谢!

  • 我在 ubuntu 上工作
  • 使用 g++ 作为 c++ 编译器
  • 使用 FFmpeg 2.0.1

最佳答案

您应该为 ffmpeg 库编写一个查找器,然后在启用 cmake 的项目中使用它来检测正确的位置和所有必需的文件( header 和库),可能允许用户覆盖搜索结果(如果我们谈论的是一个非常好的查找​​器)...

网上有很多关于如何做到这一点的教程。而且,它会相对容易,因为 ffmpeg 有一堆 .pc 文件(至少在我的 gentoo 系统中),所以你只需要重用 pkg-config 来“检测”它...并且 cmake 有一个名为 FindPkgConfig 的模块,带有宏 pkg_check_modules 以进一步简化此任务。毕竟,不要忘记使用 FindPackageHandleStandardArgs

阅读 /usr/share/cmake/Modules/readme.txt 中的详细信息或用谷歌搜索...

关于c++ - 如何通过cmake链接ffmpeg库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18312694/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com