From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 4F1E8BBAF for ; Mon, 18 Jan 2010 15:59:34 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvMAAA4GVEtRZ90xkWdsb2JhbACcAAEBAQEJCwoHEwO5JYQzBA X-IronPort-AV: E=Sophos;i="4.49,296,1262559600"; d="scan'208";a="54232589" Received: from mtaout03-winn.ispmail.ntl.com ([81.103.221.49]) by mail4-smtp-sop.national.inria.fr with ESMTP; 18 Jan 2010 15:59:34 +0100 Received: from aamtaout04-winn.ispmail.ntl.com ([81.103.221.35]) by mtaout03-winn.ispmail.ntl.com (InterMail vM.7.08.04.00 201-2186-134-20080326) with ESMTP id <20100118145933.HZBI17277.mtaout03-winn.ispmail.ntl.com@aamtaout04-winn.ispmail.ntl.com>; Mon, 18 Jan 2010 14:59:33 +0000 Received: from romulus.metastack.com ([81.102.132.77]) by aamtaout04-winn.ispmail.ntl.com (InterMail vG.2.02.00.01 201-2161-120-102-20060912) with ESMTP id <20100118145933.XRAG22934.aamtaout04-winn.ispmail.ntl.com@romulus.metastack.com>; Mon, 18 Jan 2010 14:59:33 +0000 Received: from Tenor ([172.16.0.8]) (authenticated bits=0) by romulus.metastack.com (8.14.2/8.14.2) with ESMTP id o0IExTpG015812 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Mon, 18 Jan 2010 14:59:30 GMT From: "David Allsopp" To: "'michel levy'" , References: <4B5470B4.3040201@imag.fr> In-Reply-To: <4B5470B4.3040201@imag.fr> Subject: RE: [Caml-list] Compatibility 3.11.1 and 3.09.3 Date: Mon, 18 Jan 2010 14:59:24 -0000 Message-ID: <006101ca984e$d3407b90$79c172b0$@romulus.metastack.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQMIXeUHi0Vh+P3R+0QD7T3NO5iVtAG0yUlH Content-Language: en-gb Organization: MetaStack Solutions Ltd. X-Scanned-By: MIMEDefang 2.65 on 81.102.132.77 X-Cloudmark-Analysis: v=1.1 cv=ZtHxNT4mZm3rCuM0SmWmgWxeBwJsziC8EqOrwwVkrhA= c=1 sm=0 a=EmUdJGZ0eEAA:10 a=ZOzjf2MOAAAA:8 a=Qu-mOXQmAHljCkR6e-0A:9 a=yVfwKukeCgGt01BSkQ52oaTibr4A:4 a=hosDgtEeDVGSItlJ:21 a=_jAxsGPFxIy5M5By:21 a=HpAAvcLHHh0Zw7uRqdWCyQ==:117 X-Spam: no; 0.00; byte-code:01 ocamlc:01 ocamlrun:01 compiler:01 byte-code:01 ocamlrun:01 ocaml:01 byte:01 ocaml:01 bytecode:01 compilation:01 ocaml-:01 camlp:01 makefile:01 camlp:01 Michel Levy wrote: > I have byte-code produced by ocamlc version 3.11.1 which does not work > with ocamlrun version 3.09.3. > Is this situation normal ? Afraid so. > Must I have exactly the same version for the compiler producing the > byte-code and the ocamlrun executing this code ? Yes - even releases within the same minor version number are not guaranteed to have binary compatibility. > Sincerely yours. > > PS : this problem occurs to me because I compile on my machine (ocaml > 3.11.1) and I send the byte code > to a web server with an other version (ocaml 3.09.3) and I am not in > charge of this server. It is (reasonably) easy to compile a local copy of OCaml 3.09.3 and switch to that for bytecode compilation on your server (http://caml.inria.fr/pub/distrib/ocaml-3.09/). If you're using camlp4, then you'll need a slightly screwy Makefile to ensure that you pre-process using camlp4 from 3.11.1 and compile using ocamlc from 3.09.3 but that's far from impossible... Hope that helps inasmuch as it confirms your fears! David