[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: guix build problem, no RUNPATH on libpthread.so
From: |
Michael Zucchi |
Subject: |
Re: guix build problem, no RUNPATH on libpthread.so |
Date: |
Wed, 22 Apr 2020 10:05:28 +0930 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 |
G'day Simon,
On 21/4/20 5:25 pm, zimoun wrote:
Dear Michael,
On Tue, Apr 21, 2020 at 09:41:47AM +0930, Michael Zucchi wrote:
But the first guix pull fails because it tries to run a 32 bit binary, so
ultimately fails for the the same reason as detailed in my previous email.
To be sure to understand,
- your machine is 64bit
- and you are running Guix on the top of Slackware
- Guix has been installed using this script
https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
Right?
Correct although I can't remember if i ran the script or used the steps
in the manual
[https://guix.gnu.org/manual/en/html_node/Binary-Installation.html].
slackware doesn't use one of the supported init systems and all the
steps it performs are trivial so i might've skipped it. guix with
substitutions was working ok for the limited use I made of it.
Then, something screws up and some 32bit stuff shows up, right?
Well yes and no - nothing screws up and the behaviour is intended it
just doesn't work. As i found[2] 4 months ago, the bootstrap package
explicitly uses i686 binaries for amd64 because (I presume) they are
statically linked and all amd64 hardware supports executing 32-bit mode
code. But my linux configuration disables it because i don't need or
want it.
It all happens here:
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/bootstrap.scm#n128
|(define bootstrap-executable (mlambda (program system) "Return an
origin for PROGRAM, a statically-linked bootstrap executable built for
SYSTEM." ;>>>>>>>>>>>>>> (let ((system (if (string=? system
"x86_64-linux") "i686-linux" system))) ;<<<<<<<<<<<<<< (match
(assoc-ref (assoc-ref %bootstrap-executables system) program) (#f (raise
(condition (&message (message (format #f (G_ "could not find bootstrap
binary '~a' \ for system '~a'") program system)))))) ((sha256) (origin
(method url-fetch/executable) (uri (bootstrap-executable-url program
system)) (file-name program) (sha256 sha256))))))) |
||
||
|I attempted modifying this to use 64-bit binaries at the time but it
wouldn't use the ones i supplied when it|
|came to executing the tests. So I dropped it as it was going nowhere
fast, nobody seemed interested, and had
other things to do like xmas. ||Those failed attempts are long gone.|
||
||
||
The previous emails related to this topic you mentioned ("I posted
about this months ago but I think I got no answers") in this thread
are [1] and [2], right?
[1] https://lists.gnu.org/archive/html/help-guix/2019-12/msg00111.html
[2] https://lists.gnu.org/archive/html/help-guix/2019-12/msg00131.html
Yeah.
All the best,
simon
Cheers,
Z