android - pkg-config 无法在 ffmpeg build (linux) 上找到库

标签 android linux ffmpeg cross-compiling pkg-config

我正在尝试在 ubuntu 上为 android 构建 ffmpeg...

-I've cross-compiled all the dependencies I need for my configuration
-I've set up the configuration parameters

但是./configure 一直在说

ERROR: librtmp not found using pkg-config

我已经测试过,如果我删除 --enable-librtmp 它将配置提示其他库。问题是我自己构建了所有库。所以我确定它存在并且在正确的文件夹中。

我不是 linux/编译器专家,到目前为止,我已经花了 10 多天的时间来正确完成这个项目所需的一切。我知道我可以简单地修改 ffmpeg 下的配置文件并删除 pkg-config 检查,但这不是我正在寻找的解决方案

我运行的命令是:

./configure --prefix=$PREFIX \
  --arch=${ARCH}\
    --cpu=${CPU} \
    --cross-prefix=$CROSS_PREFIX \
    --enable-cross-compile \
    --sysroot=$SYSROOT \
    --target-os=linux \
    --sysinclude=$NDK/sysroot/usr/include \
    --pkg-config=$(which pkg-config) \
    --pkg-config-flags="--static" \
    --enable-pic \
    --enable-gpl \
    --enable-nonfree \
    \
    --disable-shared \
    --enable-static \
    \
    --enable-ffmpeg \
    --disable-ffplay \
    --disable-ffprobe \
    \
    --enable-librtmp \
    --enable-zlib \
    --enable-mediacodec \
    --enable-libx264 \
    --enable-libfdk-aac\
    --enable-libfreetype\
    --enable-libmp3lame\
    --enable-openssl\
    --enable-libfontconfig\
    --enable-bsf=aac_adtstoasc \
    \
    --disable-doc \
    $ADDITIONAL_CONFIGURE_FLAG

我想知道 pkg-config 做了哪些测试来检测是否安装了任何库?以及如何向它显示我需要的库确实存在

=========更新=========

${PREFIX} 代表 build_dir ,在该目录下我有一个文件夹 lib/pkgconfig 包含许多 .pc 文件,包括 librtmp.pc。那么为什么它可以检测到其他人而不是这个呢?我检查了文件的内容和接缝是正确的,与同一文件夹中的其他内容相似

最佳答案

在执行 ./configure 之前尝试此命令

export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"

我在安装 libx265 时遇到了类似的问题。

关于android - pkg-config 无法在 ffmpeg build (linux) 上找到库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50663067/

相关文章:

android - 带有自定义适配器的 ListView,在 Fragment 中不会触发 onItemClick 事件

linux - 通过 execlp 执行带有特定输出的命令 ps

C 并发程序输出取决于输出到标准输出还是文件

c++ - 在根窗口的背景中显示彩色 X 窗口像素图

c++ - 使用 libavformat 不播放的 H.264 混合到 MP4

python - 使用 ffprobe/ffmpeg 按编码顺序提取单个帧和类型

ffmpeg - 在 debian 上使用 ffmpeg cli flv 到 mp4

android - 如何将字节数组转换为位图图像?

java - 我无法在 JUnit 中运行第二个测试,它显示 "session not created"

Android模拟器非常非常慢