Yocto dunfell capnproto receipe,收到编译器错误

问题描述

我正在我的 yocto dunfell 上构建 capnproto。 capnproto_0.7.0.bb:http://layers.openembedded.org/layerindex/recipe/122812/

我还创建了 capnproto_0.7.0.bbappend 文件

EXTRA_OECMAKE += "\
    -DBUILD_SHARED_LIBS=TRUE \
"

inherit cmake

INSANE_SKIP_${PN} += "dev-deps"
INSANE_SKIP_${PN} += "dev-elf"

SOLIBS = ".so"
FILES_SOLIBSDEV = ""

但是当我编译这个时,我得到以下错误

[70/95] : && build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/bin/aarch64-oe-linux/aarch64-oe-linux-g++ -fPIC -march=armv8-a+crc -fstack-protector-strong -pie -fPIE -D_FORTIFY_SOURCE=2 -Wa,--noexecstack -Wformat -Wformat-security -Werror=format-security  --sysroot=build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot    -O2    -g -Wa,--noexecstack -fexpensive-optimizations   -frename-registers -ftree-vectorize   -finline-functions -finline-limit=64   -Wno-error=maybe-uninitialized -Wno-error=unused-result    -fvisibility-inlines-hidden  -march=armv8-a+crc -fstack-protector-strong -pie -fPIE -D_FORTIFY_SOURCE=2 -Wa,--noexecstack -Wformat -Wformat-security -Werror=format-security  --sysroot=build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,Now,noexecstack -shared -Wl,-soname,libkj-gzip.so.0.7.0 -o src/kj/libkj-gzip.so.0.7.0 src/kj/CMakeFiles/kj-gzip.dir/compat/gzip.c++.o  -Wl,-rpath,"\$ORIGIN:build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/lib:"  src/kj/libkj-async.so.0.7.0  src/kj/libkj.so.0.7.0  build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/lib/libz.so  -lpthread && :
Failed: src/kj/libkj-gzip.so.0.7.0 
: && build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/bin/aarch64-oe-linux/aarch64-oe-linux-g++ -fPIC -march=armv8-a+crc -fstack-protector-strong -pie -fPIE -D_FORTIFY_SOURCE=2 -Wa,"\$ORIGIN:build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/lib:"  src/kj/libkj-async.so.0.7.0  src/kj/libkj.so.0.7.0  build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/lib/libz.so  -lpthread && :
build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/bin/aarch64-oe-linux/../../libexec/aarch64-oe-linux/gcc/aarch64-oe-linux/9.3.0/ld: build/tmp-glibc/work/aarch64-oe-linux/capnproto/0.7.0-r0/recipe-sysroot-native/usr/lib/libz.so: error adding symbols: file in wrong format
collect2: error: ld returned 1 exit status**

如果我从 bbappend 文件删除 EXTRA_OEMAKE "-DBUILD_SHARED_LIBS=TRUE",那么我不会观察到任何错误

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)