交叉编译glib出现问题-主要是zlib问题

执行指令交叉编译glib

meson --prefix=$(pwd)/install --cross-file ../671d -Dinternal_pcre=true -Dselinux=false -Dinstall
ed_tests=false -Ddtrace=false -Dfam=false -Dsystemtap=false -Dselinux=disabled -Dlibmount=false build 

然后编译到最后出现只有libffi,而没有zlib

##正常情况
glib 2.62.6

  Subprojects
    libffi: YES
    zlib  : YES
    
##异常情况
glib 2.62.6

  Subprojects
    libffi: YES

相信跟踪meson的编译log,发现如下问题:

/usr/bin/pkg-config --modversion zlib  1.2.11

它竟然找到了zlib,很明显,这个zlib是x86编译的时候产生的。这不是我们想要的。

那么,zlib如何就被加载了呢?

pkg-config
真凶就是它。

执行指令

pkg-config --list-all

发现了zlib。把它移除即可。

find . -name zlib.pc

发现是在编译X86版本的时候已经处理了。所以在/usr/lib/x86_64-linux-gnu/pkgconfig有了一个zlib.pc文件,把这个文件移除就解决问题了。

你可能感兴趣的:(Gstreamer)