From mboxrd@z Thu Jan 1 00:00:00 1970 From: csanchezdll@gmail.com (Carlos =?utf-8?Q?S=C3=A1nchez?= de La Lama) Subject: Re: PowerPC & GNU/Hurd cross-compilation Date: Mon, 30 Jan 2017 12:33:52 +0100 Message-ID: <7tlgts4w9r.fsf@gmail.com> References: <87d1fgjech.fsf@gnu.org> <8760l8jczg.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:38211) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cYADi-00017v-5M for guix-devel@gnu.org; Mon, 30 Jan 2017 06:34:03 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cYADd-0004Rx-6m for guix-devel@gnu.org; Mon, 30 Jan 2017 06:34:02 -0500 In-Reply-To: <8760l8jczg.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sat, 21 Jan 2017 22:54:11 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel Hi Ludo, all, >> $ file $(./pre-inst-env guix build -q --target=3Dpowerpc-linux-gnu guile= )/bin/guile >> The following files will be downloaded: >> /gnu/store/4cmc36jhjj2qq7z5pd0n9fw48dfq1cr7-guile-2.0.13-debug >> /gnu/store/h153jzzqiz10xc3yh4r2w7lkrm5pbx88-guile-2.0.13 >> /gnu/store/253hrca11y3cjh2f83dcjaxiv9a2j5m3-gmp-6.1.2 >> /gnu/store/29iq9axvllgdrf6y6zfqz111icmy3pdj-libgc-7.6.0 >> /gnu/store/911r5chr83yi6xivavndgb6mcvn71qv1-libunistring-0.9.7 >> /gnu/store/hkhffl6c6iap2igbbcap2vqbcgh7xkjv-gcc-cross-sans-libc-power= pc-linux-gnu-5.4.0 >> /gnu/store/k2j02w9q58h6i07y1fixvcdq8jply68i-gcc-cross-powerpc-linux-g= nu-5.4.0 >> /gnu/store/naqawviclvwzixvcjc17c3sss7zj9k1w-readline-7.0 >> /gnu/store/qivxbbn03scn5wn932ky8mm5xap5zn93-glibc-cross-powerpc-linux= -gnu-2.24 >> /gnu/store/rqb8p9f13mfha1xkkjwf7wfjvzv34xlk-libltdl-2.4.6 >> /gnu/store/z1qain73n3475p6sdb2ignwyalckvgnx-libffi-3.2.1 >> /gnu/store/4dazcdvnbgvhdvi5aj17ci07mz1xwzvq-bash-4.4.5 >> /gnu/store/6fzzsp453p3n5axcnl0rddjf1yw9309m-ncurses-6.0 >> /gnu/store/r7dbj8y4nf024phn8sd2v4206y71mk8q-pkg-config-powerpc-linux-= gnu-0.29 >> /gnu/store/rbhdn0wkbgb69w17f1fhridw81msam8v-libatomic-ops-7.4.4 > > With QEMU: > > --8<---------------cut here---------------start------------->8--- > $ qemu-ppc /gnu/store/4dazcdvnbgvhdvi5aj17ci07mz1xwzvq-bash-4.4.5/bin/bas= h --version > GNU bash, version 4.4.5(1)-release (powerpc-unknown-linux-gnu) > Copyright (C) 2016 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later > > This is free software; you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. > $ qemu-ppc /gnu/store/h153jzzqiz10xc3yh4r2w7lkrm5pbx88-guile-2.0.13/bin/g= uile -q --version > qemu: uncaught target signal 11 (Segmentation fault) - core dumped > --8<---------------cut here---------------end--------------->8--- > > Carlos, could you check whether the cross-compiled Guile works on a real > PowerPC machine? I suspect =E2=80=98qemu-ppc=E2=80=99 doesn=E2=80=99t em= ulate everything libgc > relies on. I checked out commit 58ea4d to try to obtain most sustitutes from hydra, but seems my products differ: $ ./pre-inst-env guix build -q --target=3Dpowerpc-linux-gnu guile /gnu/store/75vvlackg42i2aisc8zxgvqnkfz3nnx0-guile-2.0.13-debug /gnu/store/g4q5kgrl8qigzaqlhhg2jjnmzhj75pk7-guile-2.0.13 While, for hydra, products for evaluation 109452 (which uses commit 58ea4d) are: powerpc-linux-gnu.guile-2.0.13.x86_64-linux: /gnu/store/viv5cw795vy7gblgv68k16q4ri37s7aj-guile-2.0.13-debug /gnu/store/1zy8jfwbb2g956ihg5d9bk2ac41xhcsc-guile-2.0.13 powerpc-linux-gnu.guile-2.0.13.i686-linux: Fails. Note I am on i686. =20=20=20=20=20=20=20=20 In any case, the cross-compiled Guile generated on my machine works on the real PowerPC: ./pre-inst-env guix gc --references /gnu/store/g4q5kgrl8qigzaqlhhg2jjnmzhj7= 5pk7-guile-2.0.13 | xargs tar cf ~/guile.tar I scp to ppc machine, untar, and guile works: --8<---------------cut here---------------start------------->8--- ppc$ /gnu/store/g4q5kgrl8qigzaqlhhg2jjnmzhj75pk7-guile-2.0.13/bin/guile --v= ersion guile (GNU Guile) 2.0.13 Copyright (C) 2016 Free Software Foundation, Inc. License LGPLv3+: GNU LGPL 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. --8<---------------cut here---------------end--------------->8--- BR Carlos