From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25827 invoked by alias); 18 Jun 2010 06:58:32 -0000 Received: (qmail 25816 invoked by uid 22791); 18 Jun 2010 06:58:31 -0000 X-SWARE-Spam-Status: No, hits=2.4 required=5.0 tests=AWL,BAYES_00,DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED,SPF_HELO_PASS,T_RP_MATCHES_RCVD,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from kuber.nabble.com (HELO kuber.nabble.com) (216.139.236.158) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 18 Jun 2010 06:58:27 +0000 Received: from isper.nabble.com ([192.168.236.156]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1OPVX0-00017B-5N for gdb@sourceware.org; Thu, 17 Jun 2010 23:58:26 -0700 Message-ID: <28922383.post@talk.nabble.com> Date: Fri, 18 Jun 2010 06:58:00 -0000 From: Jerry 85032 To: gdb@sourceware.org Subject: Newbie gdb / gdbserver question with x86-64 and -m32 g++ goodness MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit 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: 2010-06/txt/msg00068.txt.bz2 So I am new to using gdb and gdbserver. And I'm trying to use it on a pretty complex program. But that's okay, I can't get it to run on a simple system, so let's talk about that. I created the usual c++ Hello World. I have access to two identical Centos 5 development systems connected with tcp. #include <iostream> int main(int argc, char *argv[]) { std::cout << "Hello World." << std::endl; return -1; } If I compile my hello world with: $ g++ -g hello.cpp -o hello Then everything works pretty much as expected. I can run it on either system. I can use gdb on one system, connect to gdbserver on the other system, and everything seems to work fine. I set a break at main on my local system, gdbserver the program on the target, use gdb to tell it to run, and Hello World prints out on the gdbserver system. But if I compile it with -m32, and repeat the process, then the two systems seem to be fighting over architecture issues. I receive messages like register badly formatted. Or "warning: Selected architecture i386 is not compatible with reported target architecture i386:x86-64". This seems to happen regardless of how I tell gdb to set the architecture, either i386 or i386:x86-64. g++ -g -m32 hello.cpp -o hello So I gather much of my problem is because I'm ignorant. And I don't really understand what -m32 does, although I know our hideously complex system IS compiled that way. Apart from that, I am using: $ g++ --version g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46) $ gdbserver --version GNU gdbserver Fedora (6.8-37.el5) This gdbserver was configured as "x86_64-redhat-linux-gnu" $ cat /etc/redhat-release CentOS release 5.4 (Final) Can someone help clue me in? Thank you -- View this message in context: http://old.nabble.com/Newbie-gdb---gdbserver-question-with-x86-64-and--m32-g%2B%2B-goodness-tp28922383p28922383.html Sent from the Sourceware - gdb list mailing list archive at Nabble.com.