From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id A31137F7AF for ; Thu, 8 Oct 2015 11:43:53 +0200 (CEST) IronPort-PHdr: 9a23:XIDQ/BdeY71to+09QcI99agBlGMj4u6mDksu8pMizoh2WeGdxc6+Zx7h7PlgxGXEQZ/co6odzbGG7+a/BCdZsN6oizMrTt9lb1c9k8IYnggtUoauKHbQC7rUVRE8B9lIT1R//nu2YgB/Ecf6YEDO8DXptWZBUiv2OQc9HOnpAIma153xjLDuvcKOKFwZzBOGIppMbzyO5T3LsccXhYYwYo0Q8TDu5kVyRuJN2GlzLkiSlRuvru25/Zpk7jgC86l5r50IAu3GePEzRLlcSTAnKHwd5cvxtBCFQxHcyGEbVzAtjhdGCg6NzBz+WprrtyL8sKIpwzWXM8TwZaw0VG6n5rx3RQXzzisKYW1quFrLg9B92foI6CmqoAZyltbZ Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=stefan@the2masters.de; spf=Pass smtp.mailfrom=stefan@the2masters.de; spf=None smtp.helo=postmaster@mail-io0-f174.google.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of stefan@the2masters.de) identity=pra; client-ip=209.85.223.174; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="stefan@the2masters.de"; x-sender="stefan@the2masters.de"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of stefan@the2masters.de designates 209.85.223.174 as permitted sender) identity=mailfrom; client-ip=209.85.223.174; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="stefan@the2masters.de"; x-sender="stefan@the2masters.de"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-io0-f174.google.com) identity=helo; client-ip=209.85.223.174; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="stefan@the2masters.de"; x-sender="postmaster@mail-io0-f174.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0BFAwBHOhZWm67fVdFEGhaDZW4BBYUwt2Y5gVohgnKBL1t/gT8HORMBAQEBAQEBARABAQEBAQYLCwkhLoIfgiARHQEBOCU3AgQgEgEFAVeIDAQJO595gTE+MYpYcYRlAQWPRwELARkGCophhg+CdIFFlg2CTYFhaod/WX5Ig3GOKoNPgiMSI4EXEREBgiAkDRYHgVZvAYZlgQYBAQE X-IPAS-Result: A0BFAwBHOhZWm67fVdFEGhaDZW4BBYUwt2Y5gVohgnKBL1t/gT8HORMBAQEBAQEBARABAQEBAQYLCwkhLoIfgiARHQEBOCU3AgQgEgEFAVeIDAQJO595gTE+MYpYcYRlAQWPRwELARkGCophhg+CdIFFlg2CTYFhaod/WX5Ig3GOKoNPgiMSI4EXEREBgiAkDRYHgVZvAYZlgQYBAQE X-IronPort-AV: E=Sophos;i="5.17,654,1437429600"; d="log'?scan'208";a="181719937" Received: from mail-io0-f174.google.com ([209.85.223.174]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 08 Oct 2015 11:43:52 +0200 Received: by iofh134 with SMTP id h134so51939770iof.0 for ; Thu, 08 Oct 2015 02:43:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=the2masters.de; s=mail; h=mime-version:from:date:message-id:subject:to:content-type; bh=VYAWIQltu30QgD3XgBTKalmwONWAc4CLwane0MaOsE8=; b=twiPYI+HZ9XRzJHV+aN7plUa61wte4pNB7A9ztansJ8U5zfbrYn83AMndo+HmySIzg oia+jnSMFhWr5a5DE78lDopH4IYUeEH3tVTdj08xfHzAk8QwPmfAJX/kKATuFb1Zsf2Q ohpaB10oZgQZrz5E6G5KOqH17psmTJVtIUT8A= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to :content-type; bh=VYAWIQltu30QgD3XgBTKalmwONWAc4CLwane0MaOsE8=; b=djAZHj40tPkTG9iJ2+4n6Y+MGKp/2TzJSsMokpuwoHNd+b1eTT2ZOtYub7vm8qKJdY 8cK4evLf/psKllcQ3ePZ88HghjlRZUV2jfqrirt3Euj0INXVTSxp6nuqoT1u6nexfBrx JDXGI39PIi7djVX64kRDvStiUVnrx56p1IdirAcojgX8MpF2bnHMZuefeiLVsWdgdOS/ pqKeMldXVOoP4NC3VYGOK5EiA0KzSiVeCqnNrrdgjr/rrWpwk6PGlddxWTEm4Mim4iLZ jbUnskqoGB7+4DK5tKsOibv40C9NnTsK4qb0qh6ERAoUXSoXUNCnDT4Rp588BQzDmC9E VGHQ== X-Gm-Message-State: ALoCoQm2O3w5C7CGqlX5WT1bl0qFxt+KB4YMI5W1Si2DcrbcxPp24yqolG6yvh7DPAsc58PsOQIC X-Received: by 10.107.156.14 with SMTP id f14mr7499442ioe.32.1444297431357; Thu, 08 Oct 2015 02:43:51 -0700 (PDT) MIME-Version: 1.0 Received: by 10.36.210.85 with HTTP; Thu, 8 Oct 2015 02:43:31 -0700 (PDT) X-Originating-IP: [87.159.86.170] From: Stefan Hellermann Date: Thu, 8 Oct 2015 11:43:31 +0200 Message-ID: To: caml-list@inria.fr Content-Type: multipart/mixed; boundary=001a1140c2dc58efed052194b36b Subject: [Caml-list] Broken 32 bit cross-compiler on 64bit host --001a1140c2dc58efed052194b36b Content-Type: multipart/alternative; boundary=001a1140c2dc58efe6052194b369 --001a1140c2dc58efe6052194b369 Content-Type: text/plain; charset=UTF-8 Hello, currently I'm trying to add OCaml to the openwrt router distribution [1] [2]. This would mean you could run your favorite OCaml applications on your router. I would like to run unison [3] on my router. So I first build native OCaml 4.02.3 on my x86_64 linux host, and then build a OCaml cross-compiler for the 32 bit target, e.g. mips-openwrt-linux. Building OCaml went fine after adding a small patch to manually set Endianness and Bitness in configure script, please have a look at attached patch. host OCaml configure line: ./configure -prefix somepath -no-pthread -no-debugger -no-ocamldoc -no-graph -no-cfi cross OCaml configure line: ./configure -prefix someotherpath -target-bindir /usr/bin -host x86_64-unknown-linux-gnu -target mips-openwrt-linux-musl -cc "mips-openwrt-linux-musl-gcc some target cflags" -as "mips-openwrt-linux-musl-as some target as flags" -no-pthread -no-shared-libs -no-debugger -no-ocamldoc -no-graph -no-cfi -big-endian Now the bug: When running OCaml applicantions (build with -custom), they crash on startup on the target: Fatal error: exception Failure("input_value: integer too large") This is similar to OCaml Bug #5977 [4] There is a workaround: Build the host OCaml as 32 bit OCaml, then build the cross compiler with this 32 bit host OCaml. The resulting binaries work on the target. This is what I did for openwrt [2], but it fails on 64 bit hosts where no 32 bit development tools are installed. It only catches the case when building on x86_64 hosts, it will break when building on say powerpc64 or 64 bit arm. It's also problematic for openwrt, as only the cross compiler but not the host tools are recompiled if the target arch changes, e.g. from 64 bit arm to 32 bit mips. Now my questions: - Is building a 32 bit cross compiler on a 64 bit host supposed to work? - Is my patch to configure ok, or is there a better way to configure the cross-compiler? - Should I run some test suite on the target and post the results? [WARNING] Something went wrong while checking native division and modulus please report it at http://http://caml.inria.fr/mantis/ Do I have to care? I tried defining and undefining NONSTANDARD_DIV_MOD in m.h. without any visible difference. Running the test-prog divmod.c on a few targets always returns 0. [1] https://openwrt.org/ [2] https://patchwork.ozlabs.org/patch/518982/ [3] https://www.cis.upenn.edu/~bcpierce/unison/ [4] http://caml.inria.fr/mantis/view.php?id=5977 --001a1140c2dc58efe6052194b369 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hello,
currently I'm trying to add OCaml to the openwrt router dis= tribution [1] [2]. This would mean you could run your favorite OCaml applic= ations on your router. I would like to run unison [3] on my router.

=
So I first build native OCaml 4.02.3 on my x86_64 linux host, and the= n build a OCaml cross-compiler for the 32 bit target, e.g. mips-openwrt-lin= ux. Building OCaml went fine after adding a small patch to manually set End= ianness and Bitness in configure script, please have a look at attached pat= ch.

host OCaml configure line:
./configure = -prefix somepath -no-pthread -no-debugger -no-ocamldoc -no-graph -no-cfi
cross OCaml configure line:
./configure -prefix s= omeotherpath -target-bindir /usr/bin -host x86_64-unknown-linux-gnu -target= mips-openwrt-linux-musl -cc "mips-openwrt-linux-musl-gcc some target = cflags" -as "mips-openwrt-linux-musl-as some target as flags"= ; -no-pthread -no-shared-libs -no-debugger -no-ocamldoc -no-graph -no-cfi -= big-endian


Now the bug: When running OCaml appl= icantions (build with -custom), they crash on startup on the target:
Fatal error: exception Failure("input_value: integer too large")=


This is similar to OCaml Bug #5977 [4]

There= is a workaround:
Build the host OCaml as 32 bit OCaml, then build= the cross compiler with this 32 bit host OCaml. The resulting binaries wor= k on the target.
This is what I did for openwrt [2], but it fails on 64 = bit hosts where no 32 bit development tools are installed. It only catches = the case when building on x86_64 hosts, it will break when building on say = powerpc64 or 64 bit arm. It's also problematic for openwrt, as only the= cross compiler but not the host tools are recompiled if the target arch ch= anges, e.g. from 64 bit arm to 32 bit mips.

Now my questions:<= br>- Is building a 32 bit cross compiler on a 64 bit host supposed to work?=
- Is my patch to configure ok, or is there a better way to config= ure the cross-compiler?
- Should I run some test suite on the= target and post the results?

[WARNING] Someth= ing went wrong while checking native division and modulus please report it = at http://http://caml.inria.fr/man= tis/
Do I have to care?
I tried defining and undefining NON= STANDARD_DIV_MOD in m.h. without any visible difference. Running the test-p= rog divmod.c on a few targets always returns 0.

[1] https://openwrt.org/
[2] https://patchwork.ozlabs.org/patch/518982/=
[3] https://www= .cis.upenn.edu/~bcpierce/unison/
[4] http://caml.inria.fr/mantis/view.php?id=3D5977<= /a>


--001a1140c2dc58efe6052194b369-- --001a1140c2dc58efed052194b36b Content-Type: application/octet-stream; name="001-crosscompile.patch" Content-Disposition: attachment; filename="001-crosscompile.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ifhvt9t60 LS0tIG9jYW1sLTQuMDIuMy5vbGQvY29uZmlndXJlCTIwMTUtMDUtMTIgMTY6 NDY6MzcuMDAwMDAwMDAwICswMjAwCisrKyBvY2FtbC00LjAyLjMvY29uZmln dXJlCTIwMTUtMTAtMDcgMDk6NTA6MTQuOTkyMDAwMDAwICswMjAwCkBAIC00 Nyw2ICs0Nyw4IEBACiBub19uYWtlZF9wb2ludGVycz1mYWxzZQogVE9PTFBS RUY9IiIKIHdpdGhfY2ZpPXRydWUKK2FyY2g2ND1mYWxzZQorYmlnX2VuZGlh bj0xCiAKICMgVHJ5IHRvIHR1cm4gaW50ZXJuYXRpb25hbGl6YXRpb24gb2Zm LCBjYW4gY2F1c2UgY29uZmlnLmd1ZXNzIHRvIG1hbGZ1bmN0aW9uIQogdW5z ZXQgTEFORwpAQCAtMTU0LDYgKzE1NiwxMCBAQAogICAgICAgICBub19uYWtl ZF9wb2ludGVycz10cnVlOzsKICAgICAtbm8tY2ZpfC0tbm8tY2ZpKQogICAg ICAgICB3aXRoX2NmaT1mYWxzZTs7CisgICAgLWFyY2g2NHwtLWFyY2g2NCkK KyAgICAgICAgYXJjaDY0PXRydWU7OworICAgIC1iaWctZW5kaWFufC0tYmln LWVuZGlhbikKKyAgICAgICAgYmlnX2VuZGlhbj0wOzsKICAgICAqKSBpZiBl Y2hvICIkMSIgfCBncmVwIC1xIC1lICdeLS1cP1thLXpBLVowLTktXVwrPSc7 IHRoZW4KICAgICAgICAgIGVyciAiY29uZmlndXJlIGV4cGVjdHMgYXJndW1l bnRzIG9mIHRoZSBmb3JtICctcHJlZml4IC9mb28vYmFyJywiIFwKICAgICAg ICAgICAgICAibm90ICctcHJlZml4PS9mb28vYmFyJyAobm90ZSB0aGUgJz0n KS4iCkBAIC01MzEsMjAgKzUzNywxMyBAQAogICBlc2FjCiBlbHNlCiAgICMg Rm9yIGNyb3NzLWNvbXBpbGF0aW9uLCBydW50ZXN0IGFsd2F5cyBmYWlsczog YWRkIHNwZWNpYWwgaGFuZGxpbmcuCi0gIGNhc2UgIiR0YXJnZXQiIGluCi0g ICAgaTY4Ni0qLW1pbmd3KikgaW5mICJPSywgdGhpcyBpcyBhIHJlZ3VsYXIg MzIgYml0IGFyY2hpdGVjdHVyZS4iCi0gICAgICAgICAgICAgICAgICAgZWNo byAiI3VuZGVmIEFSQ0hfU0lYVFlGT1VSIiA+PiBtLmgKLSAgICAgICAgICAg ICAgICAgICBzZXQgNCA0IDQgMiA4Ci0gICAgICAgICAgICAgICAgICAgYXJj aDY0PWZhbHNlOzsKLSAgICB4ODZfNjQtKi1taW5ndyopIGluZiAiV293ISBB IDY0IGJpdCBhcmNoaXRlY3R1cmUhIgotICAgICAgICAgICAgICAgICAgICAg ZWNobyAiI2RlZmluZSBBUkNIX1NJWFRZRk9VUiIgPj4gbS5oCi0gICAgICAg ICAgICAgICAgICAgICBzZXQgNCA0IDggMiA4Ci0gICAgICAgICAgICAgICAg ICAgICBhcmNoNjQ9dHJ1ZTs7Ci0gICAgKikgZXJyICJTaW5jZSBkYXRhdHlw ZSBzaXplcyBjYW5ub3QgYmUgZ3Vlc3NlZCB3aGVuIGNyb3NzLWNvbXBpbGlu ZyxcbiIgXAotICAgICAgICAgICAiYSBoYXJkY29kZWQgbGlzdCBpcyB1c2Vk IGJ1dCB5b3VyIGFyY2hpdGVjdHVyZSBpc24ndCBrbm93biB5ZXQuXG4iIFwK LSAgICAgICAgICAgIllvdSBuZWVkIHRvIGRldGVybWluZSB0aGUgc2l6ZXMg eW91cnNlbGYuXG4iIFwKLSAgICAgICAgICAgIlBsZWFzZSBzdWJtaXQgYSBi dWcgcmVwb3J0IGluIG9yZGVyIHRvIGV4cGFuZCB0aGUgbGlzdC4iIDs7Ci0g IGVzYWMKKyAgaWYgJGFyY2g2NDsgdGhlbgorICAgIGVjaG8gIiNkZWZpbmUg QVJDSF9TSVhUWUZPVVIiID4+IG0uaAorICAgIHNldCA0IDQgOCAyIDgKKyAg ZWxzZQorICAgIGVjaG8gIiN1bmRlZiBBUkNIX1NJWFRZRk9VUiIgPj4gbS5o CisgICAgc2V0IDQgNCA0IDIgOAorICBmaQogZmkKIAogaWYgdGVzdCAkMSAh PSA0ICYmIHRlc3QgJDIgIT0gNCAmJiB0ZXN0ICQ0ICE9IDQ7IHRoZW4KQEAg LTU2Nyw4ICs1NjYsMTEgQEAKIAogIyBEZXRlcm1pbmUgZW5kaWFubmVzcwog Ci1zaCAuL3J1bnRlc3QgZW5kaWFuLmMKLWNhc2UgJD8gaW4KK2lmICEgJGNy b3NzX2NvbXBpbGVyOyB0aGVuCisgIHNoIC4vcnVudGVzdCBlbmRpYW4uYwor ICBiaWdfZW5kaWFuPSQ/CitmaQorY2FzZSAkYmlnX2VuZGlhbiBpbgogICAw KSBpbmYgIlRoaXMgaXMgYSBiaWctZW5kaWFuIGFyY2hpdGVjdHVyZS4iCiAg ICAgIGVjaG8gIiNkZWZpbmUgQVJDSF9CSUdfRU5ESUFOIiA+PiBtLmg7Owog ICAxKSBpbmYgIlRoaXMgaXMgYSBsaXR0bGUtZW5kaWFuIGFyY2hpdGVjdHVy ZS4iCg== --001a1140c2dc58efed052194b36b Content-Type: application/octet-stream; name="host configure.log" Content-Disposition: attachment; filename="host configure.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ifhz9uef2 Li9jb25maWd1cmUgIC1wcmVmaXggL2hvbWUvc3RlZmFuL29wZW53cnQvc3Rh Z2luZ19kaXIvaG9zdCAtbm8tcHRocmVhZCAtbm8tZGVidWdnZXIgLW5vLW9j YW1sZG9jIC1uby1ncmFwaCAtbm8tY2ZpDQpDb25maWd1cmluZyBmb3IgaG9z dCB4ODZfNjQtdW5rbm93bi1saW51eC1nbnUgLi4uDQpDb25maWd1cmluZyBm b3IgdGFyZ2V0IHg4Nl82NC11bmtub3duLWxpbnV4LWdudSAuLi4NClVzaW5n IGNvbXBpbGVyIGdjYy4NClRoZSBDIGNvbXBpbGVyIGlzIEFOU0ktY29tcGxp YW50Lg0KQ2hlY2tpbmcgdGhlIHNpemVzIG9mIGludGVnZXJzIGFuZCBwb2lu dGVycy4uLg0KV293ISBBIDY0IGJpdCBhcmNoaXRlY3R1cmUhDQpUaGlzIGlz IGEgbGl0dGxlLWVuZGlhbiBhcmNoaXRlY3R1cmUuDQpEb3VibGVzIGNhbiBi ZSB3b3JkLWFsaWduZWQuDQo2NC1iaXQgaW50ZWdlcnMgY2FuIGJlIHdvcmQt YWxpZ25lZC4NCk5hdGl2ZSBkaXZpc2lvbiBhbmQgbW9kdWx1cyBoYXZlIHJv dW5kLXRvd2FyZHMtemVybyBzZW1hbnRpY3MsIHdpbGwgdXNlIHRoZW0uDQpy YW5saWIgZm91bmQNCiMhIGFwcGVhcnMgdG8gd29yayBpbiBzaGVsbCBzY3Jp cHRzLg0KUE9TSVggc2lnbmFsIGhhbmRsaW5nIGZvdW5kLg0KZXhwbTEoKSwg bG9nMXAoKSwgaHlwb3QoKSwgY29weXNpZ24oKSBmb3VuZC4NCmdldHJ1c2Fn ZSgpIGZvdW5kLg0KdGltZXMoKSBmb3VuZC4NCnRlcm1jYXAgZnVuY3Rpb25z IGZvdW5kICh3aXRoIGxpYnJhcmllcyAnLWxjdXJzZXMnKQ0KWW91IGhhdmUg QlNEIHNvY2tldHMuDQpzb2NrbGVuX3QgaXMgZGVmaW5lZCBpbiA8c3lzL3Nv Y2tldC5oPg0KaW5ldF9hdG9uKCkgZm91bmQuDQpJUHY2IGlzIHN1cHBvcnRl ZC4NCnVuaXN0ZC5oIGZvdW5kLg0Kb2ZmX3QgaXMgZGVmaW5lZCBpbiA8c3lz L3R5cGVzLmg+DQpkaXJlbnQuaCBmb3VuZC4NCnJld2luZGRpcigpIGZvdW5k Lg0KbG9ja2YoKSBmb3VuZC4NCm1rZmlmbygpIGZvdW5kLg0KZ2V0Y3dkKCkg Zm91bmQuDQpnZXR3ZCgpIGZvdW5kLg0KZ2V0cHJpb3JpdHkoKSBmb3VuZC4N CnV0aW1lKCkgZm91bmQuDQp1dGltZXMoKSBmb3VuZC4NCmR1cDIoKSBmb3Vu ZC4NCmZjaG1vZCgpIGZvdW5kLg0KdHJ1bmNhdGUoKSBmb3VuZC4NCnN5cy9z ZWxlY3QuaCBmb3VuZC4NCnNlbGVjdCgpIGZvdW5kLg0Kc3ltbGluaygpIGZv dW5kLg0Kd2FpdHBpZCgpIGZvdW5kLg0Kd2FpdDQoKSBmb3VuZC4NCmdldGdy b3VwcygpIGZvdW5kLg0Kc2V0Z3JvdXBzKCkgZm91bmQuDQppbml0Z3JvdXBz KCkgZm91bmQuDQpQT1NJWCB0ZXJtaW9zIGZvdW5kLg0KQXN5bmNocm9ub3Vz IEkvTyBhcmUgc3VwcG9ydGVkLg0Kc2V0aXRpbWVyKCkgZm91bmQuDQpnZXRo b3N0bmFtZSgpIGZvdW5kLg0KdW5hbWUoKSBmb3VuZC4NCmdldHRpbWVvZmRh eSgpIGZvdW5kLg0KbWt0aW1lKCkgZm91bmQuDQpzZXRzaWQoKSBmb3VuZC4N CnB1dGVudigpIGZvdW5kLg0Kc2V0bG9jYWxlKCkgYW5kIDxsb2NhbGUuaD4g Zm91bmQuDQpkbG9wZW4oKSBmb3VuZCBpbiAtbGRsLg0KRHluYW1pYyBsb2Fk aW5nIG9mIHNoYXJlZCBsaWJyYXJpZXMgaXMgc3VwcG9ydGVkLg0KbW1hcCgp IGZvdW5kLg0KcHdyaXRlKCkgZm91bmQNCnN0YXQoKSBzdXBwb3J0cyBuYW5v c2Vjb25kIHByZWNpc2lvbi4NCmdldGhvc3RieW5hbWVfcigpIGZvdW5kICh3 aXRoIDYgYXJndW1lbnRzKS4NCmdldGhvc3RieWFkZHJfcigpIGZvdW5kICh3 aXRoIDggYXJndW1lbnRzKS4NCm1rc3RlbXAoKSBmb3VuZA0KbmljZSgpIGZv dW5kDQpTeXN0ZW0gc3RhY2sgb3ZlcmZsb3cgY2FuIGJlIGRldGVjdGVkLg0K Qnl0ZWNvZGUgdGhyZWFkcyBsaWJyYXJ5IHN1cHBvcnRlZC4NCltXQVJOSU5H XSBDYW5ub3QgY29tcGlsZSBYMTEgcHJvZ3JhbS4NCltXQVJOSU5HXSBYMTEg bm90IGZvdW5kLCB0aGUgImdyYXBoIiBsaWJyYXJ5IHdpbGwgbm90IGJlIHN1 cHBvcnRlZC4NCltXQVJOSU5HXSBCRkQgbGlicmFyeSBub3QgZm91bmQsICdv YmppbmZvJyB3aWxsIGJlIHVuYWJsZSB0byBkaXNwbGF5IGluZm8gb24gLmNt eHMgZmlsZXMuDQpDRkkgc3VwcG9ydDogZGlzYWJsZWQgYnkgY29tbWFuZC1s aW5lIG9wdGlvbiAtbm8tY2ZpDQoNCioqIENvbmZpZ3VyYXRpb24gc3VtbWFy eSAqKg0KDQpEaXJlY3RvcmllcyB3aGVyZSBPQ2FtbCB3aWxsIGJlIGluc3Rh bGxlZDoNCiAgICAgICAgYmluYXJpZXMuLi4uLi4uLi4uLi4uLi4uLi4gL2hv bWUvc3RlZmFuL29wZW53cnQvc3RhZ2luZ19kaXIvaG9zdC9iaW4NCiAgICAg ICAgc3RhbmRhcmQgbGlicmFyeS4uLi4uLi4uLi4gL2hvbWUvc3RlZmFuL29w ZW53cnQvc3RhZ2luZ19kaXIvaG9zdC9saWIvb2NhbWwNCiAgICAgICAgbWFu dWFsIHBhZ2VzLi4uLi4uLi4uLi4uLi4gL2hvbWUvc3RlZmFuL29wZW53cnQv c3RhZ2luZ19kaXIvaG9zdC9tYW4gKHdpdGggZXh0ZW5zaW9uIC4xKQ0KQ29u ZmlndXJhdGlvbiBmb3IgdGhlIGJ5dGVjb2RlIGNvbXBpbGVyOg0KICAgICAg ICBDIGNvbXBpbGVyIHVzZWQuLi4uLi4uLi4uLiBnY2MNCiAgICAgICAgb3B0 aW9ucyBmb3IgY29tcGlsaW5nLi4uLi4gLU8gLWZuby1kZWZlci1wb3AgLVdh bGwgLURfRklMRV9PRkZTRVRfQklUUz02NA0KICAgICAgICBvcHRpb25zIGZv ciBsaW5raW5nLi4uLi4uLiAgLVdsLC1FICAtbG0gIC1sZGwgLWxjdXJzZXMN CiAgICAgICAgc2hhcmVkIGxpYnJhcmllcyBhcmUgc3VwcG9ydGVkDQogICAg ICAgIG9wdGlvbnMgZm9yIGNvbXBpbGluZy4uLi4uIC1PIC1mUElDIC1PIC1m bm8tZGVmZXItcG9wIC1XYWxsIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQNCiAg ICAgICAgY29tbWFuZCBmb3IgYnVpbGRpbmcuLi4uLi4gZ2NjIC1zaGFyZWQg LW8gbGliLnNvIC1XbCwtcnBhdGgsL2EvcGF0aCBvYmpzDQpDb25maWd1cmF0 aW9uIGZvciB0aGUgbmF0aXZlLWNvZGUgY29tcGlsZXI6DQogICAgICAgIGhh cmR3YXJlIGFyY2hpdGVjdHVyZS4uLi4uIGFtZDY0DQogICAgICAgIE9TIHZh cmlhbnQuLi4uLi4uLi4uLi4uLi4uIGxpbnV4DQogICAgICAgIEMgY29tcGls ZXIgdXNlZC4uLi4uLi4uLi4uIGdjYw0KICAgICAgICBvcHRpb25zIGZvciBj b21waWxpbmcuLi4uLiAtTyAtV2FsbCAtRF9GSUxFX09GRlNFVF9CSVRTPTY0 DQogICAgICAgIG9wdGlvbnMgZm9yIGxpbmtpbmcuLi4uLi4uICAgLWxtDQog ICAgICAgIGFzc2VtYmxlciAuLi4uLi4uLi4uLi4uLi4uIGFzDQogICAgICAg IHByZXByb2Nlc3NlZCBhc3NlbWJsZXIgLi4uIGdjYyAtYw0KICAgICAgICBh c3NlbWJsZXIgc3VwcG9ydHMgQ0ZJIC4uLiBubw0KICAgICAgICB3aXRoIGZy YW1lIHBvaW50ZXJzLi4uLi4uLiBubw0KICAgICAgICBuYWtlZCBwb2ludGVy cyBmb3JiaWRkZW4uLiBubw0KICAgICAgICBuYXRpdmUgZHlubGluayAuLi4u Li4uLi4uLiB0cnVlDQogICAgICAgIHByb2ZpbGluZyB3aXRoIGdwcm9mIC4u Li4uIHN1cHBvcnRlZA0KU291cmNlLWxldmVsIHJlcGxheSBkZWJ1Z2dlcjog bm90IHN1cHBvcnRlZA0KQWRkaXRpb25hbCBsaWJyYXJpZXMgc3VwcG9ydGVk Og0KICAgICAgICB1bml4IHN0ciBudW0gZHlubGluayBiaWdhcnJheSB0aHJl YWRzDQpDb25maWd1cmF0aW9uIGZvciB0aGUgIm51bSIgbGlicmFyeToNCiAg ICAgICAgdGFyZ2V0IGFyY2hpdGVjdHVyZSAuLi4uLi4gYW1kNjQgKGFzbSBs ZXZlbCAxKQ0KVGhlICJncmFwaCIgbGlicmFyeTogbm90IHN1cHBvcnRlZA0K DQoqKiBPQ2FtbCBjb25maWd1cmF0aW9uIGNvbXBsZXRlZCBzdWNjZXNzZnVs bHkgKioNCg== --001a1140c2dc58efed052194b36b Content-Type: application/octet-stream; name="cross configure.log" Content-Disposition: attachment; filename="cross configure.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ifhzw9142 Li9jb25maWd1cmUgIC1wcmVmaXggL2hvbWUvc3RlZmFuL29wZW53cnQvc3Rh Z2luZ19kaXIvdG9vbGNoYWluLW1pcHNfMzRrY19nY2MtNS4yLjBfbXVzbC0x LjEuMTEvb2NhbWwgLXRhcmdldC1iaW5kaXIgL3Vzci9iaW4gLXRhcmdldCBt aXBzLW9wZW53cnQtbGludXgtbXVzbCAtY2MgIm1pcHMtb3BlbndydC1saW51 eC1tdXNsLWdjYyAtT3MgLXBpcGUgLW1uby1icmFuY2gtbGlrZWx5IC1taXBz MzJyMiAtbXR1bmU9MzRrYyAtZm5vLWNhbGxlci1zYXZlcyAtZmhvbm91ci1j b3B0cyAtV25vLWVycm9yPXVudXNlZC1idXQtc2V0LXZhcmlhYmxlIC1tc29m dC1mbG9hdCIgLWFzICJtaXBzLW9wZW53cnQtbGludXgtbXVzbC1hcyAtT3Mg LXBpcGUgLW1uby1icmFuY2gtbGlrZWx5IC1taXBzMzJyMiAtbXR1bmU9MzRr YyAtZm5vLWNhbGxlci1zYXZlcyAtZmhvbm91ci1jb3B0cyAtV25vLWVycm9y PXVudXNlZC1idXQtc2V0LXZhcmlhYmxlIC1tc29mdC1mbG9hdCIgLW5vLXB0 aHJlYWQgLW5vLXNoYXJlZC1saWJzIC1uby1kZWJ1Z2dlciAtbm8tb2NhbWxk b2MgLW5vLWdyYXBoIC1uby1jZmkgLWhvc3QgeDg2XzY0LWxpbnV4LWdudSAt YmlnLWVuZGlhbiA7IGZpICkNCkNvbmZpZ3VyaW5nIGZvciBob3N0IHg4Nl82 NC1wYy1saW51eC1nbnUgLi4uDQpDb25maWd1cmluZyBmb3IgdGFyZ2V0IG1p cHMtb3BlbndydC1saW51eC1tdXNsIC4uLg0KVXNpbmcgY29tcGlsZXIgbWlw cy1vcGVud3J0LWxpbnV4LW11c2wtZ2NjIC1PcyAtcGlwZSAtbW5vLWJyYW5j aC1saWtlbHkgLW1pcHMzMnIyIC1tdHVuZT0zNGtjIC1mbm8tY2FsbGVyLXNh dmVzIC1maG9ub3VyLWNvcHRzIC1Xbm8tZXJyb3I9dW51c2VkLWJ1dC1zZXQt dmFyaWFibGUgLW1zb2Z0LWZsb2F0Lg0KLi90c3Q6IDE6IC4vdHN0OiBTeW50 YXggZXJyb3I6ICIoIiB1bmV4cGVjdGVkDQpbV0FSTklOR10gVW5hYmxlIHRv IGNvbXBpbGUgdGhlIHRlc3QgcHJvZ3JhbS4NCiBUaGlzIGZhaWx1cmUgaXMg ZXhwZWN0ZWQgZm9yIGNyb3NzLWNvbXBpbGF0aW9uOg0KIHdlIHdpbGwgYXNz dW1lIHRoZSBDIGNvbXBpbGVyIGlzIEFOU0ktY29tcGxpYW50Lg0KQ2hlY2tp bmcgdGhlIHNpemVzIG9mIGludGVnZXJzIGFuZCBwb2ludGVycy4uLg0KLi90 c3Q6IDE6IC4vdHN0OkVMQFA0OiBub3QgZm91bmQNCi4vdHN0OiAyOiAuL3Rz dDogU3ludGF4IGVycm9yOiAiKCIgdW5leHBlY3RlZA0KVGhpcyBpcyBhIGJp Zy1lbmRpYW4gYXJjaGl0ZWN0dXJlLg0KRG91YmxlcyBtdXN0IGJlIGRvdWJs ZXdvcmQtYWxpZ25lZC4NCjY0LWJpdCBpbnRlZ2VycyBtdXN0IGJlIGRvdWJs ZXdvcmQtYWxpZ25lZC4NClB1VFRZLi90c3Q6IDE6IC4vdHN0OiBTeW50YXgg ZXJyb3I6ICIoIiB1bmV4cGVjdGVkDQpbV0FSTklOR10gU29tZXRoaW5nIHdl bnQgd3Jvbmcgd2hpbGUgY2hlY2tpbmcgbmF0aXZlIGRpdmlzaW9uIGFuZCBt b2R1bHVzIHBsZWFzZSByZXBvcnQgaXQgYXQgaHR0cDovL2h0dHA6Ly9jYW1s LmlucmlhLmZyL21hbnRpcy8NCnJhbmxpYiBmb3VuZA0KIyEgYXBwZWFycyB0 byB3b3JrIGluIHNoZWxsIHNjcmlwdHMuDQpQT1NJWCBzaWduYWwgaGFuZGxp bmcgZm91bmQuDQpleHBtMSgpLCBsb2cxcCgpLCBoeXBvdCgpLCBjb3B5c2ln bigpIGZvdW5kLg0KZ2V0cnVzYWdlKCkgZm91bmQuDQp0aW1lcygpIGZvdW5k Lg0KdGVybWNhcCBmdW5jdGlvbnMgZm91bmQgKHdpdGggbGlicmFyaWVzICct bGN1cnNlcycpDQpZb3UgaGF2ZSBCU0Qgc29ja2V0cy4NCnNvY2tsZW5fdCBp cyBkZWZpbmVkIGluIDxzeXMvc29ja2V0Lmg+DQppbmV0X2F0b24oKSBmb3Vu ZC4NCklQdjYgaXMgc3VwcG9ydGVkLg0KdW5pc3RkLmggZm91bmQuDQpvZmZf dCBpcyBkZWZpbmVkIGluIDxzeXMvdHlwZXMuaD4NCmRpcmVudC5oIGZvdW5k Lg0KcmV3aW5kZGlyKCkgZm91bmQuDQpsb2NrZigpIGZvdW5kLg0KbWtmaWZv KCkgZm91bmQuDQpnZXRjd2QoKSBmb3VuZC4NCmdldHByaW9yaXR5KCkgZm91 bmQuDQp1dGltZSgpIGZvdW5kLg0KdXRpbWVzKCkgZm91bmQuDQpkdXAyKCkg Zm91bmQuDQpmY2htb2QoKSBmb3VuZC4NCnRydW5jYXRlKCkgZm91bmQuDQpz eXMvc2VsZWN0LmggZm91bmQuDQpzZWxlY3QoKSBmb3VuZC4NCnN5bWxpbmso KSBmb3VuZC4NCndhaXRwaWQoKSBmb3VuZC4NCndhaXQ0KCkgZm91bmQuDQou L3RzdDogMTogLi90c3Q6IFN5bnRheCBlcnJvcjogIigiIHVuZXhwZWN0ZWQN Ci4vdHN0OiAxOiAuL3RzdDpFTECmNDogbm90IGZvdW5kDQouL3RzdDogMjog Li90c3Q6IFN5bnRheCBlcnJvcjogIigiIHVuZXhwZWN0ZWQNClB1VFRZLi90 c3Q6IDE6IC4vdHN0OkVMQKY0OiBub3QgZm91bmQNCi4vdHN0OiAyOiAuL3Rz dDogU3ludGF4IGVycm9yOiAiKCIgdW5leHBlY3RlZA0KUHVUVFlQT1NJWCB0 ZXJtaW9zIGZvdW5kLg0KLi90c3Q6IDE6IC4vdHN0OiBTeW50YXggZXJyb3I6 ICIoIiB1bmV4cGVjdGVkDQpzZXRpdGltZXIoKSBmb3VuZC4NCmdldGhvc3Ru YW1lKCkgZm91bmQuDQp1bmFtZSgpIGZvdW5kLg0KZ2V0dGltZW9mZGF5KCkg Zm91bmQuDQpta3RpbWUoKSBmb3VuZC4NCnNldHNpZCgpIGZvdW5kLg0KcHV0 ZW52KCkgZm91bmQuDQpzZXRsb2NhbGUoKSBhbmQgPGxvY2FsZS5oPiBmb3Vu ZC4NCmRsb3BlbigpIGZvdW5kLg0KbW1hcCgpIGZvdW5kLg0KcHdyaXRlKCkg Zm91bmQNCnN0YXQoKSBzdXBwb3J0cyBuYW5vc2Vjb25kIHByZWNpc2lvbi4N CmdldGhvc3RieW5hbWVfcigpIGZvdW5kICh3aXRoIDYgYXJndW1lbnRzKS4N CmdldGhvc3RieWFkZHJfcigpIGZvdW5kICh3aXRoIDggYXJndW1lbnRzKS4N Cm1rc3RlbXAoKSBmb3VuZA0KbmljZSgpIGZvdW5kDQpDYW5ub3QgZGV0ZWN0 IHN5c3RlbSBzdGFjayBvdmVyZmxvdy4NCkJ5dGVjb2RlIHRocmVhZHMgbGli cmFyeSBzdXBwb3J0ZWQuDQpbV0FSTklOR10gQ2Fubm90IGNvbXBpbGUgWDEx IHByb2dyYW0uDQpbV0FSTklOR10gWDExIG5vdCBmb3VuZCwgdGhlICJncmFw aCIgbGlicmFyeSB3aWxsIG5vdCBiZSBzdXBwb3J0ZWQuDQpbV0FSTklOR10g QkZEIGxpYnJhcnkgbm90IGZvdW5kLCAnb2JqaW5mbycgd2lsbCBiZSB1bmFi bGUgdG8gZGlzcGxheSBpbmZvIG9uIC5jbXhzIGZpbGVzLg0KQ0ZJIHN1cHBv cnQ6IGRpc2FibGVkIGJ5IGNvbW1hbmQtbGluZSBvcHRpb24gLW5vLWNmaQ0K DQoqKiBDb25maWd1cmF0aW9uIHN1bW1hcnkgKioNCg0KRGlyZWN0b3JpZXMg d2hlcmUgT0NhbWwgd2lsbCBiZSBpbnN0YWxsZWQ6DQogICAgICAgIGJpbmFy aWVzLi4uLi4uLi4uLi4uLi4uLi4uIC9ob21lL3N0ZWZhbi9vcGVud3J0L3N0 YWdpbmdfZGlyL3Rvb2xjaGFpbi1taXBzXzM0a2NfZ2NjLTUuMi4wX211c2wt MS4xLjExL29jYW1sL2Jpbg0KICAgICAgICBzdGFuZGFyZCBsaWJyYXJ5Li4u Li4uLi4uLiAvaG9tZS9zdGVmYW4vb3BlbndydC9zdGFnaW5nX2Rpci90b29s Y2hhaW4tbWlwc18zNGtjX2djYy01LjIuMF9tdXNsLTEuMS4xMS9vY2FtbC9s aWIvb2NhbWwNCiAgICAgICAgbWFudWFsIHBhZ2VzLi4uLi4uLi4uLi4uLi4g L2hvbWUvc3RlZmFuL29wZW53cnQvc3RhZ2luZ19kaXIvdG9vbGNoYWluLW1p cHNfMzRrY19nY2MtNS4yLjBfbXVzbC0xLjEuMTEvb2NhbWwvbWFuICh3aXRo IGV4dGVuc2lvbiAuMSkNCkNvbmZpZ3VyYXRpb24gZm9yIHRoZSBieXRlY29k ZSBjb21waWxlcjoNCiAgICAgICAgQyBjb21waWxlciB1c2VkLi4uLi4uLi4u Li4gbWlwcy1vcGVud3J0LWxpbnV4LW11c2wtZ2NjIC1PcyAtcGlwZSAtbW5v LWJyYW5jaC1saWtlbHkgLW1pcHMzMnIyIC1tdHVuZT0zNGtjIC1mbm8tY2Fs bGVyLXNhdmVzIC1maG9ub3VyLWNvcHRzIC1Xbm8tZXJyb3I9dW51c2VkLWJ1 dC1zZXQtdmFyaWFibGUgLW1zb2Z0LWZsb2F0DQogICAgICAgIG9wdGlvbnMg Zm9yIGNvbXBpbGluZy4uLi4uIC1PIC1mbm8tZGVmZXItcG9wIC1XYWxsIC1E X0ZJTEVfT0ZGU0VUX0JJVFM9NjQNCiAgICAgICAgb3B0aW9ucyBmb3IgbGlu a2luZy4uLi4uLi4gICAtbG0gIC1sY3Vyc2VzDQogICAgICAgIHNoYXJlZCBs aWJyYXJpZXMgbm90IHN1cHBvcnRlZA0KQ29uZmlndXJhdGlvbiBmb3IgdGhl IG5hdGl2ZS1jb2RlIGNvbXBpbGVyOg0KICAgICAgICAobm90IHN1cHBvcnRl ZCBvbiB0aGlzIHBsYXRmb3JtKQ0KU291cmNlLWxldmVsIHJlcGxheSBkZWJ1 Z2dlcjogbm90IHN1cHBvcnRlZA0KQWRkaXRpb25hbCBsaWJyYXJpZXMgc3Vw cG9ydGVkOg0KICAgICAgICB1bml4IHN0ciBudW0gZHlubGluayBiaWdhcnJh eSB0aHJlYWRzDQpDb25maWd1cmF0aW9uIGZvciB0aGUgIm51bSIgbGlicmFy eToNCiAgICAgICAgdGFyZ2V0IGFyY2hpdGVjdHVyZSAuLi4uLi4gZ2VuZXJp YyAoYXNtIGxldmVsIDApDQpUaGUgImdyYXBoIiBsaWJyYXJ5OiBub3Qgc3Vw cG9ydGVkDQoNCioqIE9DYW1sIGNvbmZpZ3VyYXRpb24gY29tcGxldGVkIHN1 Y2Nlc3NmdWxseSAqKg0K --001a1140c2dc58efed052194b36b--