------- Comment #13 from rwild at gcc dot gnu dot org  2010-08-05 17:01 -------
config.log excerpt from zlib:

configure:7903: result: yes
configure:7936: checking whether the gcc  -m64 linker (ld) supports shared
libraries
configure:9020: result: yes
configure:9265: checking dynamic linker characteristics
configure:9710: error: Link tests are not allowed after GCC_NO_EXECUTABLES.

which corresponds to this code in zlib/configure, from AC_PROG_LIBTOOL:

  lt_cv_shlibpath_overrides_runpath=no
    save_LDFLAGS=$LDFLAGS
    save_libdir=$libdir
    eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
         LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
    if test x$gcc_no_link = xyes; then
  as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO"
5


Either GCC or the user needs to prime cache variables in the way this test
shows:
<http://git.savannah.gnu.org/cgit/libtool.git/tree/tests/no-executables.at>
(There is currently one item missing there for AIX, which is relevant for GCC
but irrelevant to this particular PR).

This same issue supposedly holds for other GCC directories in which
GCC_NO_EXECUTABLES is used; it might just be latent.

Question is, what values the variables should be primed with.  In general,
tough one.  In this specific case: find out whether your linker sets DT_RUNPATH
upon -Wl,-rpath ("yes") or only DT_RPATH ("no").  Pass
lt_cv_shlibpath_overrides_runpath=no or =yes to configure accordingly.  Hmm. 
How can I ensure this primes the cache for host directories only?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45174

Reply via email to