Yes, The default user space for RHEL 5 and SLES10 is 32bit, but we always build 64bit crash since PPC64 support is added. Top level makefile should have something like:

 ifeq (${TARGET}, PPC64)
CONF_FLAGS = -m64
endif

So, this change has to be modified to support cross-compile.

Thanks
Haren




Inactive hide details for "Seymour, Shane M" ---06/26/2012 05:32:47 PM---"Seymour, Shane M" <shane.seymour@hp.com>"Seymour, Shane M" ---06/26/2012 05:32:47 PM---"Seymour, Shane M" <shane.seymour@hp.com>

    "Seymour, Shane M" <shane.seymour@hp.com> 
    Sent by: crash-utility-bounces@redhat.com

    06/26/2012 05:25 PM
    Please respond to
    "Discussion list for crash utility usage, maintenance and development" <crash-utility@redhat.com>


To

    "Discussion list for crash utility usage, maintenance and development" <crash-utility@redhat.com>

cc


Subject

    Re: [Crash-utility] PPC64 compiler question

The default for RHEL5 is 32bit:

http://www.ibm.com/developerworks/wikis/display/LinuxP/Performance+FAQs#PerformanceFAQs-WhyistheRHEL5defaultforapplications32bitandtheSLES11default64bit%3F

The default for RHEL6 presumably changed to be 64bit like SLES11. To quote big blue (when talking about RHEL5): "It is logical that the next version of RHEL would likely move to a 64-bit default."

-----Original Message-----
From: crash-utility-bounces@redhat.com [
mailto:crash-utility-bounces@redhat.com] On Behalf Of Dave Anderson
Sent: Tuesday, June 26, 2012 11:23 PM
To: Discussion list for crash utility usage, maintenance and development
Subject: [Crash-utility] PPC64 compiler question


While doing some testing I ran into a surprising crash-build
bug on ppc64, where on a RHEL5 ppc64 host, a simple "make"
command would build a 32-bit PPC crash utility.  But on RHEL6,
it built as 64-bit PPC64 crash utility as expected.  (This was due
to a crash-6.0.3 change to support "make target=PPC" on
a ppc64 host).

Anyway, the reason is that in the RHEL5 environment, if an
application is compiled without specifying -m32 or -m64,
it builds a 32-bit binary, whereas on RHEL6 it builds a
64-bit binary by default:

RHEL5:

# cat doit.c
main() {}
# gcc doit.c
# file a.out
a.out: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), not stripped
# gcc --version
gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-52)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

# uname -r
2.6.18-308.el5
#

RHEL6:

# cat doit.c
main() {}
# gcc doit.c
# file a.out
a.out: ELF 64-bit MSB executable, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
# gcc --version
gcc (GCC) 4.4.6 20110731 (Red Hat 4.4.6-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

# uname -r
2.6.32-220.el6.ppc64
#

What controls that?  Is it the compiler, some environment setting, or what?

Dave

--
Crash-utility mailing list
Crash-utility@redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility

--
Crash-utility mailing list
Crash-utility@redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility