C FFMpeg示例程序

C FFMpeg示例程序,c,linux,ubuntu,ffmpeg,C,Linux,Ubuntu,Ffmpeg,我目前正在学习马丁·博姆的ffmpeg教程 我想用代码块IDE编译一个ffmpeg示例程序,但它不能 #include <stdio.h> #include <stdlib.h> #include "libavcodec/avcodec.h" #include "libavformat/avformat.h" int main(int argc, char *argv[]) { av_register_all(); return 0; } #包括 #包括

我目前正在学习马丁·博姆的ffmpeg教程

我想用代码块IDE编译一个ffmpeg示例程序,但它不能

#include <stdio.h>
#include <stdlib.h>

#include "libavcodec/avcodec.h"
#include "libavformat/avformat.h"

int main(int argc, char *argv[])
{
av_register_all();

    return 0;
}
#包括
#包括
#包括“libavcodec/avcodec.h”
#包括“libavformat/avformat.h”
int main(int argc,char*argv[])
{
av_寄存器_all();
返回0;
}

请帮帮我。如何编译它。我正在使用Linux(Ubuntu)

您可以尝试在Linux中编译以下命令

gss <program-name.c> 
gss

您必须告诉编译器头文件和库文件在哪里。这是通过标志来完成的,以告知哪些目录包含头文件,以及哪些目录包含库。您还需要
-l
来告诉要链接的库

这些标志可以这样使用:

$ g++ -I/path/to/headers myprogram.cpp -L/path/to/libraries -lthelibrary $g++-I/path/to/headers myprogram.cpp-L/path/to/libraries-lthelibrary 关于库的说明:在Linux(和UNIX系统)上,它们是以“lib”开头,以扩展名“.A”或“.so”结尾的文件。当使用
-l
标记指定库时,您不会写入这些标记。因此,对于库文件“libfoo.a”,您只能使用
-lfoo
链接它

有关gcc和g++选项的更多信息,请参阅

编辑:对于像Code::Blocks这样的IDE,很可能存在一些项目设置,您可以在其中添加包含和库目录以及链接库。检查“项目”菜单中的“设置”或“属性”选项


Edit2:参见示例常见问题解答哪里可以找到Code::Blocks中的链接器设置,预处理器设置应该就在附近。

对于像eclipse这样的IDE,请关注您遇到了哪些问题?请编辑您的问题以添加错误等内容。编译器说找不到“libavcodec/avcodec.h”这是我的问题。或者如何编译Martine Bohme示例程序的示例程序?g++-I/usr/local/include main.c-L/usr/local/lib-lavcodec-lavformat表示错误:“UINT64_c”未在此声明scope@Glennascual问题包含一个关于如何解决的代码片段。欢迎链接到潜在的解决方案,但是,请让您的其他用户知道它是什么,以及它为什么存在。始终引用重要链接中最相关的部分,以防无法访问目标站点或永久脱机。考虑到仅仅是一个指向外部站点的链接是一个可能的原因。