G'day all,

Still on the trail of the serial unit issue. Think I have it working (it's working perfectly on OSX PPC and all my variants of Linux) but I can't seem to generate valid OSX Intel binaries.

I've got a working cross compile setup where I can generate fully functional linux/win32/OSX-PPC binaries and they all work beautifully, but while all the open darwin tools tell me my OSX-Intel binaries are ok, when I actually put them on an Intel Mac and try to run them all I get is :

-bash: ./hello: cannot execute binary file

If I compile it with

fpc -Tdarwin -Ppowerpc hello.pas

It works perfectly (under Rosetta of course), but with

fpc -Tdarwin -Pi386 hello.pas

I get the above result.

My cross compilers were generated with the same command line, substituting i386 for powerpc when required, and my X86_64, Win32 and OSX-PPC compilers work perfectly.

The MacOS SDK is MacOSX10.4u.sdk which is a universal binary SDK.

I'm at a loss as to how to proceed to debug this one..

I'm in the process of downloading a native 2.2.2 compiler on my Intel Mac so I can do some comparisons of the asm/objects as I have no idea what to do next.

[EMAIL PROTECTED]:/tracks/devel/Projects/Pascal/Proploader$ i386-darwin-lipo 
hello -detailed_info
input file hello is not a fat file
Non-fat file: hello is architecture: i386

[EMAIL PROTECTED]:/tracks/devel/Projects/Pascal/Proploader$ file hello
hello: Mach-O executable i386

[EMAIL PROTECTED]:~$ fpc -i
Free Pascal Compiler version 2.2.3

Compiler Date      : 2008/09/24
Compiler CPU Target: i386

Supported targets:
  GO32 V2 DOS extender
  Linux for i386
  OS/2
  Win32 for i386
  FreeBSD/ELF for i386
  Solaris for i386 (under development)
  Beos for i386 (under development)
  NetBSD for i386 (under development)
  Netware for i386(clib)
  WDOSX DOS extender
  OpenBSD for i386 (under development)
  OS/2 via EMX
  Watcom compatible DOS extenders
  Netware for i386(libc)
  WinCE for i386
  Linux for x64_6432
  Darwin for i386
  Symbian OS for i386

Supported CPU instruction sets:
  386
  PENTIUM
  PENTIUM2
  PENTIUM3
  PENTIUM4
  PENTIUMM

Supported FPU instruction sets:
  X87
  SSE
  SSE2
  SSE3

Supported Optimizations:
  REGVAR
  UNCERTAIN
  STACKFRAME
  PEEPHOLE
  ASMCSE
  LOOPUNROLL
  TAILREC

I'll keep at it, but I'd appreciate any pointers from anyone who has done this 
before.

Regards,
Brad
--
Dolphins are so intelligent that within a few weeks they can
train Americans to stand at the edge of the pool and throw them
fish.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to