English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
Compiling OCaml under OS X 10.6
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2009-09-08 (12:26)
From: John Whitington <john@c...>
Subject: Re: [Caml-list] Compiling OCaml under OS X 10.6

On 3 Sep 2009, at 03:28, Andres Varon wrote:
> On Sep 1, 2009, at 12:32 PM, John Whitington wrote:
>> Hi Folks,
>> Has anyone managed this? Bytecode seems fine, native not so.
>> I've tried just ./configure and ./configure -cc "gcc -m64" with the  
>> source bzip of 3.11.1 as suggested in INSTALL. Both compile fine,  
>> but give:
>> feast:trunk john$ ocamlopt -c a.ml
>> feast:trunk john$ ocamlopt -o a a.cmx
>> ld: warning: in libasmrun.a, file is not of required architecture
>> Undefined symbols:
>> "_caml_ml_set_binary_mode", referenced from:
>>     .L139 in stdlib.a(pervasives.o)
>>     .L157 in stdlib.a(pervasives.o)
>>     _camlPervasives__102 in stdlib.a(pervasives.o)
>>     _camlPervasives__102 in stdlib.a(pervasives.o)
>> ... (several hundred more lines)
>> This is with XCode 3.2 64-bit (from the Snow Leopard DVD), the gcc  
>> is i686-apple-darwin10-gcc-4.2.1.
>> lipo -info libasmrun.a gives:
>> input file /usr/local/lib/ocaml/libasmrun.a is not a fat file
>> Non-fat file: /usr/local/lib/ocaml/libasmrun.a is architecture:  
>> x86_64
>> One possibly-salient error from the build:
>> ld: warning: -read_only_relocs cannot be used with x86_64
>> Configure log: http://www.coherentpdf.com/configure.txt
>> make world.opt log: http://www.coherentpdf.com/build.txt
> I just installed Snow Leopard in my laptop and the x86_64 ocaml  
> appears to work fine. I noticed that in your configure log the gcc  
> compiler is still listed at the end as 'gcc', while in mine it is  
> 'gcc -m64'. Perhaps you need to cleanup with 'make distclean'  and  
> reconfigure before compiling the x86_64 target?

It turned out these errors were spurious - I nuked the machine and  
installed 10.6 clean, and it was fine. However, 3.11.1 seems to have a  
bug 3.11.0 doesn't, which I've reported here:


Also, the 3.11.1 intel .dmg from the OCaml website doesn't work, which  
I've reported here:


Thanks to Andres and Markus for their help. It's taken 3 days in total  
to deal with all the ocaml and non-ocaml issues with Snow Leopard -  
time I got back to some work now :-) And next time a new OS X comes  
out, I'll buy a copy and put it on the shelf for a few months!