Steve Ellcey <s...@cup.hp.com> writes: > I have a question about the check for -rdynamic in gcc/configure. > What we have in configure.ac is: > > # Check -rdynamic > LDFLAGS="$LDFLAGS -rdynamic" > AC_MSG_CHECKING([for -rdynamic]) > AC_TRY_LINK([],[return 0;], > [AC_MSG_RESULT([yes]); have_rdynamic=yes], > [AC_MSG_RESULT([no])]) > if test x"$have_rdynamic" = x"yes" ; then > pluginlibs="-rdynamic" > fi > > The problem I have is that on HP-UX this test will set have_rdynamic > to yes even though the HP linker doesn't understand the option. > The AC_TRY_LINK works because the linker prints a warning message > about not understanding -rdynamic but still runs and creates an > object file. Thus the configure script thinks the HP linker does > know about the -rdynamic flag and continues to use it (resulting > in more warnings during the GCC build). > > Any ideas on how to address this?
Link a small program with -rdynamic, one which defines a globally visible function which is not called. Run objdump -T and see if you can see that symbol in the output. If you follow this path you must do the in_tree_ld/ld_ver dance so that cross-compilers continue to work. Or, run ld --help and look for --export-dynamic. Ian