On Fri, Mar 21, 2025 at 12:42:42PM +0100, Phil Sutter wrote:
Hi Hangbin,
On Fri, Mar 21, 2025 at 10:40:25AM +0000, Hangbin Liu wrote:
Hi Jason, Phil, On Wed, Mar 19, 2025 at 05:15:41PM +0100, Jason A. Donenfeld wrote:
On Mon, Jan 06, 2025 at 08:10:43AM +0000, Hangbin Liu wrote:
- echo "file /bin/nft $(NFTABLES_PATH)/src/nft 755 0 0" >> $@
- echo "file /lib/libmnl.so.0 $(TOOLCHAIN_PATH)/lib/libmnl.so.0 755 0 0" >> $@
- echo "file /lib/libnftnl.so.11 $(TOOLCHAIN_PATH)/lib/libnftnl.so.11 755 0 0" >> $@
Can't these be statically linked into the nft binary?
If I omit these, I will got error like
mnl_attr_put: symbol not found
Even though I set `--enable-static` in nft build.
Do you know what's the reason?
I was able to have nft linked statically against built libmnl and libnftnl by passing '--disable-shared --enable-static' to configure calls of all three build systems. With --enable-shared in library configure calls, nftables build preferred to link against the DSOs and I did not find a way to change this.
The patch is using "./configure --prefix=/ $(CROSS_COMPILE_FLAG) --enable-static \ --disable-shared --disable-debug --disable-man-doc --with-mini-gmp --without-cli" to build nft.
I don't know why it's not linked static.
Thanks Hangbin