我想在我的 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 ”错误
Cảm ơn bạn rất nhiều!
- 我在 ubuntu 上工作
- 使用 g++ 作为 c++ 编译器
- 使用 FFmpeg 2.0.1
您应该为 ffmpeg
库编写一个查找器,然后在启用 cmake 的项目中使用它来检测正确的位置和所有必需的文件( header 和库),可能允许用户覆盖搜索结果(如果我们谈论的是一个非常好的查找器)...
网上有很多关于如何做到这一点的教程。而且,它会相对容易,因为 ffmpeg
有一堆 .pc
文件(至少在我的 gentoo 系统中),所以你只需要重用 pkg-config
来“检测”它...并且 cmake 有一个名为 FindPkgConfig
的模块,带有宏 pkg_check_modules
以进一步简化此任务。毕竟,不要忘记使用 FindPackageHandleStandardArgs
.
đọc /usr/share/cmake/Modules/readme.txt
中的详细信息或用谷歌搜索...
Tôi là một lập trình viên xuất sắc, rất giỏi!