In the future, please send patch files as attachments. They are difficult to apply when pasted into an html email body. I took a brief look at what you described and confirmed that it does fail to build with your patch, although the error I get is different - something about needing at least C++14. Whether the patch is the correct way to build with GRPC on Alpine, I'm not sure. I don't think anyone has ever done that, so you are in uncharted territory. If you figure it out please drop us a line on how you did it and we can write it down in the docs, and potentially patch the image build to support it. Quentin On 9/1/23 09:11, hzchenyuefang wrote:
hi, when I build frr docker image with grpc enabled, it is always failed with the following error:
CXX tests/lib/test_grpc-test_grpc.o CXXLD tests/lib/test_grpc /usr/lib/gcc/x86_64-alpine-linux-musl/12.2.1/../../../../x86_64-alpine-linux-musl/bin/ld: tests/lib/test_grpc-test_grpc.o: undefined reference to symbol '_ZN4absl12lts_202206235MutexD1Ev' /usr/lib/gcc/x86_64-alpine-linux-musl/12.2.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/libabsl_synchronization.so.2206.0.0: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make: *** [Makefile:8659: tests/lib/test_grpc] Error 1
ERROR: frr: check failed
frr version: tag 8.5.2 build command: docker build -t frr-grpc-alpine:8.5.2 -f docker/alpine/Dockerfile . APKBUILD.in file changed:
diff --git a/alpine/APKBUILD.in b/alpine/APKBUILD.in index fef7a61cc..adeb48199 100644 --- a/alpine/APKBUILD.in +++ b/alpine/APKBUILD.in @@ -13,12 +13,12 @@ makedepends="ncurses-dev net-snmp-dev gawk texinfo perl expat fakeroot flex fortify-headers gdbm git gmp json-c-dev kmod lddtree libacl libatomic libattr libblkid libburn libbz2 libc-dev libcap-dev libcurl libedit libffi libgcc libgomp libisoburn libisofs - libltdl libressl libssh2 libstdc++ libtool libuuid + libltdl libressl libssh2 libstdc++ libtool libuuid abseil-cpp abseil-cpp-dev linux-headers lzip lzo m4 make mkinitfs mpc1 mpfr4 mtools musl-dev ncurses-libs ncurses-terminfo ncurses-terminfo-base patch pax-utils pcre2 perl pkgconf python3 python3-dev readline readline-dev sqlite-libs pcre2-dev - squashfs-tools sudo tar texinfo xorriso xz-libs py-pip rtrlib rtrlib-dev - py3-sphinx elfutils elfutils-dev libyang-dev" + squashfs-tools sudo tar texinfo xorriso xz-libs py-pip rtrlib rtrlib-dev re2-dev + py3-sphinx elfutils elfutils-dev libyang-dev cmake grpc grpc-dev protobuf-dev" checkdepends="pytest py-setuptools" install="$pkgname.pre-install $pkgname.pre-deinstall $pkgname.post-deinstall" subpackages="$pkgname-dev $pkgname-doc $pkgname-dbg" @@ -43,6 +43,7 @@ build() { --localstatedir=$_localstatedir \ --enable-rpki \ --enable-vtysh \ + --enable-grpc \ --enable-multipath=64 \ --enable-vty-group=frrvty \ --enable-user=$_user \
hzchenyuefang
hzchenyuefang@corp.netease.com
_______________________________________________ dev mailing list dev@lists.frrouting.org https://lists.frrouting.org/listinfo/dev