ld: /usr/local/lib//libavcodec.a(v4l2_buffers.o): in function `v4l2_set_pts': /home/lxq/ffmpeg/ffmpeg-4.4/libavcodec/v4l2_buffers.c:69: undefined reference to `av_rescale_q' /usr/bin/ld: /usr/local/lib//libavcodec.a(v4l2_buffers.o): in function `v4l2_free_buffer': /home/lxq/ffmpeg/ffmpeg-4.4/libavcodec/v4l2_buffers.c:223: undefined reference to `sem_post' /usr/bin/ld: /home/lxq/ffmpeg/ffmpeg-4.4/libavcodec/v4l2_buffers.c:233: undefined reference to `av_buffer_unref' collect2: error: ld returned 1 exit status
时间: 2023-07-07 13:40:23 浏览: 346
这个错误提示说明链接器无法找到`av_rescale_q`、`sem_post`和`av_buffer_unref`这三个函数的定义。这些函数都是ffmpeg库中的函数。你需要将ffmpeg的库文件链接到你的程序中。你可以使用以下命令来编译你的代码:
```bash
sudo gcc test.c -I "/usr/local/include/" -L "/usr/local/lib/" -lavutil -lavformat -lavcodec -lm -g -lswscale -pthread
```
其中,`-pthread`选项指定需要链接的线程库。这个命令会使用sudo权限编译你的代码,并链接ffmpeg的库文件和线程库。
阅读全文
相关推荐


















