I am trying to build GNU Make from source on a Linux machine.
I have installed many libraries in non-standard locations. Guile is one of them.
To build make, I do:
1. ./configure --prefix=/path/to/my/dir --enable-rpath
From pkg-config, the build system accurately finds the location of guile on the machine.
However, in the actual making of Make, the compilation flags to gcc do *not* include -Wl,-path with the hard-coded location.
I have explicitly checked this using
2. make 2>&1 | tee build.log
I have available:
1. config.log (result of step 1, ./configure)
2. build.log, which shows explicitly the calls to gcc with the flags
From config.log, I have:
pkg_CV_GUILE_CFLAGS='-pthread -I/path/to/header/files ...'
Those are the flags that were used to build guile from source.
From build.log, the output of make in the source directory, I am seeing the following relevant line which involves -lguile-2.0
gcc pkg_CV_GUILE_CFLAGS -g -O2 -Wl,--export-dynamic -o make ar.o arscan.o commands.o default.o dir.o expand.o file.o function.o getopt.o getopt1.o implicit.o job.o load.o loadapi.o main.o misc.o output.o read.o remake.o rule.o signame.o strcache.o variable.o version.o vpath.o hash.o remote-stub.o guile.o pkg_CV_GUILE_LIBS ***[a notice-able white-space here]*** -ldl -lrt
So, it looks like in the line which involves everything and outputs the executable make, -Wl,-rpath is missing (with --enable-rpath set in ./configure).
Does anyone have experience with this? Thanks.