From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27391 invoked by alias); 3 Sep 2007 04:16:14 -0000 Received: (qmail 27326 invoked from network); 3 Sep 2007 04:15:56 -0000 Received: from unknown (202.108.59.148) by sourceware.org with QMTP; 3 Sep 2007 04:15:56 -0000 Received: (qmail 26439 invoked from network); 3 Sep 2007 12:11:29 +0800 Received: from unknown (HELO xchen) (Authenticated?user:?xchen@sunrisetelecom.com.cn@[219.142.163.192]) (envelope-sender ) by 0 (qmail-ldap-1.03) with SMTP for ; 3 Sep 2007 12:11:29 +0800 From: "xchen" To: "'Daniel Jacobowitz'" Cc: Subject: Re: (Rising Spam Alert)Re: wrong lib address Date: Mon, 03 Sep 2007 04:16:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Office Outlook, Build 11.0.5510 In-Reply-To: <20070830121433.GC25759@caradoc.them.org> X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2007-09/txt/msg00006.txt.bz2 Message-ID: <20070903041600.Af-S_3UkG4rmvD9U9RHR0jer116uO6Q8MZYtEipaB3U@z> =20 Hi Daniel, You said I need the libraries available in the same path for both host and target. But gdb can load ld.so.1 successfully , in fact my target doesn't have the path such as /opt/montavista/pro/devkit/ppc/8xx/target/lib, ld.so.1 was storaged in /lib for target. It means gdb load the same library use different path. Why gdb can't load other library use different path.=20 BTW /mnt/cf/shared/lib was added in the ld.so.conf for target. I guess $(CROSS_COMPILE)/lib is the default library path for montavista, in target, $(CROSS_COMPILE) is a empty string, so for gdb both /opt/montavista/pro/devkit/ppc/8xx/target/lib and /lib are equle to $(CROSS_COMPILE)/lib. But when I use echo $CROSS_COMPILE in host,=20 Last login: Mon Sep 3 10:24:10 2007 from 192.168.70.183 Have a lot of fun... metrodev:~ # echo $CROSS_COMPILE metrodev:~ #=20 It displays empty string Could you give me directions. Thx, Xi (gdb) info sharedlibrary=20 =46rom To Syms Read Shared Object Library 0x30001f90 0x30013760 Yes /opt/montavista/pro/devkit/ppc/8xx/target/lib/ld.so.1 No /mnt/cf/shared/lib/libpthread.so.0 No /mnt/cf/shared/lib/librt.so.1 No /mnt/cf/shared/lib/libstdc++.so.5 No /mnt/cf/shared/lib/libm.so.6 0x0fd7da40 0x0fd86f3c Yes /opt/montavista/pro/devkit/ppc/8xx/target/lib/libgcc_s.so.1 0x0fc32ad0 0x0fd3a1fc Yes /opt/montavista/pro/devkit/ppc/8xx/target/lib/libc.so.6 -----=D3=CA=BC=FE=D4=AD=BC=FE----- =B7=A2=BC=FE=C8=CB: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.o= rg] =B4=FA=B1=ED Daniel Jacobowitz =B7=A2=CB=CD=CA=B1=BC=E4: 2007=C4=EA8=D4=C230=C8=D5 20:15 =CA=D5=BC=FE=C8=CB: xchen =B3=AD=CB=CD: gdb@sourceware.org =D6=F7=CC=E2: (Rising Spam Alert)Re: wrong lib address On Thu, Aug 30, 2007 at 06:21:12PM +0800, xchen wrote: > I don't know why the path changed to /mnt/cf/shared/lib, this is my=20 > target lib path. Maybe I create the related dir can solve the problem,=20 > but I am glad to know the essential reason and the related solution. That means /mnt/cf/shared is the path on your target where these libraries are found. You need the libraries available in the same path (plus sysroot) on your host that is used on your target. Try running ldd on the target instead of the cross ldd. -- Daniel Jacobowitz CodeSourcery