>     AC_SEARCH_LIBS([argp_parse], [argp])

> checking for pow... no
> checking for library containing pow... -lm
> checking for library containing pthread_create... -lpthread
> checking for library containing argp_parse... none required <<<---
> checking pkg-config is at least version 0.9.0... yes
> checking for LIBNLGENL3... yes
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating stateless/Makefile
> config.status: creating stateful/Makefile
> config.status: creating joold/Makefile
> config.status: executing depfiles commands

Sigh. It checks for the lib but doesn't think it needs it. Shouldn't this be 
running all under the same toolchain?

I think it may be the LEDE build system that is screwing this one up. Or my 
Makefile is totally nuts (possible, not very experienced in LEDE build system).

It get's worse. If I force -largp, the error stays the same:
> x86_64-openwrt-linux-musl-gcc -Wall -O2 -largp -I./../../include 
> -I/home/danrl/lede/nat64/source/staging_dir/target-x86_64_musl-1.1.15/usr/include/libnl3
>      -o jool ../../common/netlink/jool-config.o 
> ../../common/stateful/jool-xlat.o ../common/jool-cJSON.o ../common/jool-dns.o 
> ../common/jool-file.o ../common/jool-jool.o ../common/jool-netlink2.o 
> ../common/jool-str_utils.o ../common/argp/jool-options.o 
> ../common/nl/jool-buffer.o ../common/target/jool-bib.o 
> ../common/target/jool-eam.o ../common/target/jool-global.o 
> ../common/target/jool-instance.o ../common/target/jool-joold.o 
> ../common/target/jool-json.o ../common/target/jool-log_time.o 
> ../common/target/jool-pool.o ../common/target/jool-pool4.o 
> ../common/target/jool-pool6.o ../common/target/jool-session.o 
> -L/home/danrl/lede/nat64/source/staging_dir/target-x86_64_musl-1.1.15/usr/lib 
> -lnl-genl-3 -lnl-3 -lpthread -lm 
> ../common/jool-jool.o: In function `main':
> jool.c:(.text.startup+0x89): undefined reference to `argp_parse'
> collect2: error: ld returned 1 exit status
> Makefile:504: recipe for target 'jool' failed
> make[6]: *** [jool] Error 1

However, if I force -largp-standalone (nonexistent) the linker exits 
complaining about how it could not find the lib. This means, in the previous 
command (with forced -largp) the linker found the lib but did not think it 
helps linking argp_parse. Why is that?

Maybe someone from LEDE can help explain this?

Lede-dev mailing list

Reply via email to