chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] OS X 10.6 (Snow Leopard)


From: Derrell Piper
Subject: Re: [Chicken-users] OS X 10.6 (Snow Leopard)
Date: Sun, 30 Aug 2009 09:35:15 -0700

Yes, building with ARCH=x86-64 works.

On Aug 29, 2009, at 10:32 PM, Jim Ursetto wrote:

OK, we will have to deal with this then.  In the meantime, can you
confirm that building with ARCH=x86-64 fixes the problem as well?

On Sat, Aug 29, 2009 at 11:05 PM, Derrell Piper<address@hidden loft.org> wrote:
I was pretty surprised myself. But it seems that's the path they chose:

fluffy% gcc test.c -o test
fluffy% file test
test: Mach-O 64-bit executable x86_64
fluffy% otool -h -v test
test:
Mach header
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags MH_MAGIC_64 X86_64 ALL LIB64 EXECUTE 11 1536 NOUNDEFS
DYLDLINK TWOLEVEL
fluffy% gcc -arch i386 test.c -o test
fluffy% file test
test: Mach-O executable i386
fluffy% otool -h -v test
test:
Mach header
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags MH_MAGIC I386 ALL 0x00 EXECUTE 11 1172 NOUNDEFS
DYLDLINK TWOLEVEL

Derrell

On Aug 29, 2009, at 8:32 PM, Jim Ursetto wrote:

Is it really true that 10.6 gcc defaults to producing 64-bit binaries?
I imagine that would break a lot of traditional UNIX builds.  If so
then we will need to either have better detection of bittedness or
simply force gcc to 32-bit mode unless the ARCH is specified as
64-bit.

64-bit works perfectly fine on OS X, except that you must remember to
build all your local libraries in 64-bit mode.  If 64-bit is now the
standard output format, then this is not an issue and we should prefer
64-bit when available.  I do not have a copy of 10.6 to play around
with yet though.

On Sat, Aug 29, 2009 at 9:56 PM, Jim Ursetto<address@hidden> wrote:

It might be easier to compile with

make PLATFORM=macosx ARCH=x86-64

as stated in the README.
Jim

On Sat, Aug 29, 2009 at 7:35 PM, Derrell Piper<address@hidden >
wrote:

It appears that the native Xcode 3.2 build tools are now 64-bit on 10.6
and
config-arch.sh isn't smart enough to distinguish the 64- bitness. As a result, it assembles the 32-bit apply-hack and then fails to construct
libchicken.a because there's a mix of 32-bit and 64-bit .o's.

To get a native 64-bit Chicken, you need to make sure
apply-hack.x86-64.s is
built. I just edited config-arch.sh and changed the 'x86' to 'x86-64':

30c30
<     i*86) echo "x86";;
---

   i*86) echo "x86-64";;

fluffy% csi

CHICKEN
(c)2008 The Chicken Team
(c)2000-2007 Felix L. Winkelmann
Version 3.4.0 - macosx-unix-gnu-x86-64 [ 64bit manyargs dload ptables
applyhook ]
compiled 2009-08-29 on fluffy.local (Darwin)



_______________________________________________
Chicken-users mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/chicken-users









reply via email to

[Prev in Thread] Current Thread [Next in Thread]