我正在我的 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,-z,now,-z,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,--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,-z,now,-z,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 && :
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**
如果我EXTRA_OEMAKE "-DBUILD_SHARED_LIBS=TRUE"
从我的 bbappend 文件中删除,那么我不会发现任何错误。
谢谢