gpt4 book ai didi

c++ - Vim 找不到 C++ libavformat/libavutil 库(没有那个文件或目录)

转载 作者:太空宇宙 更新时间:2023-11-04 08:50:25 29 4
gpt4 key购买 nike

正在加载 omxplayer.cpp在 vim 中文件,它给了我以下错误:

omxplayer.cpp|34 col 34| fatal error: libavformat/avformat.h: No such file or directory

这就是问题所在

#include <libavformat/avformat.h>
#include <libavutil/avutil.h>

但我知道文件存在:

$ ls -l /usr/lib/libavu*
lrwxrwxrwx 1 root root 28 2013-11-08 13:46 /usr/lib/libavutil.so -> /usr/lib/libavutil.so.51.7.0
lrwxrwxrwx 1 root root 19 2012-06-13 12:38 /usr/lib/libavutil.so.51 -> libavutil.so.51.7.0
-rw-r--r-- 1 root root 117212 2012-06-13 12:38 /usr/lib/libavutil.so.51.7.0
$ ls -l /usr/lib/libavf*
lrwxrwxrwx 1 root root 30 2013-11-08 13:29 /usr/lib/libavformat.so -> /usr/lib/libavformat.so.53.3.0
lrwxrwxrwx 1 root root 21 2012-06-13 12:38 /usr/lib/libavformat.so.53 -> libavformat.so.53.3.0
-rw-r--r-- 1 root root 1053000 2012-06-13 12:38 /usr/lib/libavformat.so.53.3.0

ldconfig也可以找到它们:

$ ldconfig -p | grep libavformat && ldconfig -p | grep libavutil
libavformat.so.53 (libc6, hwcap: 0x0008000000008000) => /usr/lib/i686/cmov/libavformat.so.53
libavformat.so.53 (libc6) => /usr/lib/libavformat.so.53
libavutil.so.51 (libc6, hwcap: 0x0008000000008000) => /usr/lib/i686/cmov/libavutil.so.51
libavutil.so.51 (libc6) => /usr/lib/libavutil.so.51

我在某处读到 ldconfig 用于运行时,而 ld 用于构建时,但是,在这种情况下,我知道库位于/usr/lib 中,因此,可能导致此问题的原因是什么?

最佳答案

omxplayer.cpp|34 col 34| fatal error: libavformat/avformat.h: No such file or directory

错误消息说明了一切:它不在库中,但是找不到头文件。 正常位置是 /usr/include/libavformat

首先通过g++ -v omxplayer.cpp命令检查头文件位置是否包含,该命令将显示头文件包含的所有目录。

如果它没有显示包含指定 header 的目录,那么您需要在 g++ -Ipath/to/headers omxplayer.cpp. 命令中指定它的位置。

关于c++ - Vim 找不到 C++ libavformat/libavutil 库(没有那个文件或目录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19869215/

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