This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [rfc] Clarify shared library warning


On Fri, Oct 13, 2006 at 11:18:28AM -0400, Daniel Jacobowitz wrote:
> Does anyone dislike this version?  If not, I will commit it, and
> someone can expand on it in the manual if necessary (probably with a
> reference to solib-absolute-prefix).
> 
> warning: .dynamic section for "/lib/libc.so.6" is not at the expected
> address (wrong library or version mismatch?)

I've checked in this patch; feel free to improve it by further patches
:-)

-- 
Daniel Jacobowitz
CodeSourcery

2006-10-17  Daniel Jacobowitz  <dan@codesourcery.com>

	* solib-svr4.c (LM_ADDR_CHECK): Suggest shared library mismatch.

Index: solib-svr4.c
===================================================================
RCS file: /cvs/src/src/gdb/solib-svr4.c,v
retrieving revision 1.58
diff -u -p -r1.58 solib-svr4.c
--- solib-svr4.c	18 May 2006 20:38:56 -0000	1.58
+++ solib-svr4.c	17 Oct 2006 20:51:56 -0000
@@ -187,9 +187,6 @@ LM_ADDR_CHECK (struct so_list *so, bfd *
 
       if (dynaddr + l_addr != l_dynaddr)
 	{
-	  warning (_(".dynamic section for \"%s\" "
-		     "is not at the expected address"), so->so_name);
-
 	  if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
 	    {
 	      Elf_Internal_Ehdr *ehdr = elf_tdata (abfd)->elf_header;
@@ -218,9 +215,16 @@ LM_ADDR_CHECK (struct so_list *so, bfd *
 	  if ((l_addr & align) == 0 && ((dynaddr - l_dynaddr) & align) == 0)
 	    {
 	      l_addr = l_dynaddr - dynaddr;
+
+	      warning (_(".dynamic section for \"%s\" "
+		     "is not at the expected address"), so->so_name);
 	      warning (_("difference appears to be caused by prelink, "
 			 "adjusting expectations"));
 	    }
+	  else
+	    warning (_(".dynamic section for \"%s\" "
+		       "is not at the expected address "
+		       "(wrong library or version mismatch?)"), so->so_name);
 	}
 
     set_addr:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]