Guix on Debian Testing sbcl package needs warning to set SBCL_HOME

  • Done
  • quality assurance status badge
Details
4 participants
  • Alex Kost
  • Leo Famulari
  • Ludovic Courtès
  • Christopher W Carpenter
Owner
unassigned
Submitted by
Christopher W Carpenter
Severity
normal
C
C
Christopher W Carpenter wrote on 6 Feb 2016 06:40
(address . bug-guix@gnu.org)
87y4aycs21.fsf@mordocai.net
I talked with mark weaver about this on #guix and he asked me to send a
mail.

When doing guix package -i sbcl on my newly setup debian testing + guix
machine and then attempting to run sbcl I got the error:

fatal error encountered in SBCL pid 7492(tid 140737354086144):
can't find core file at /usr/lib64/sbcl/sbcl.core

Exporting SBCL_HOME=$HOME/.guix-profile/lib/sbcl fixes this for me. The
way this seems to be handled other places is by printing a message after
the package install explaining that this may be needed.

This seems like the appropriate thing to do to me. I'd love to submit a
patch if someone can guide me through it, I just started seriously
trying guix out today.

Thanks,
Christopher Carpenter

P.S. Please make sure to CC me in replies, I have not joined the mailing
list (yet).
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJWtYgZAAoJEFJw6mniKuelMCkP/1zEw5B4QZBYL3OTaTaogOjj
CT46p6QZne7RtaZCtac31aubI3XGerhWq1WiKTHFtBp7VGBUGjjgN/K4Rv5PfLYQ
HotZ6PxhmMQyfbQTVXrz5RZx0fzY+sg7H/JMx9zcCcLLCormE3Taj5Uqa7uk74ri
oKH+dhwvgp23YOcnmVs8ac3bm91ucp8Cnk1qovek1Ymk62laN5TLDY+g74YMBKDg
YT3iJ4WzVWR36z7FVavJD+D/52fkhW7tL4JQ9koJgrUdLOvj/eBD90LM7xYl3jC2
Y1azXG9Ab7nYJ+82soEySmZoXZLmxzgcDJEsq0ygZ9yeX6+w1GUGg+dMl8WXBWa7
m+UScjJIg0PRdlNhIXNkPROz4HL7e4+76w/WJFdQ36nk7kcjtz53EFBks6R0vOYX
jMT9t8HZE7iP4aZaq8hIEtrL6mTt2zqyDERBsbdbwaqKyFvsRRa+wb2s9Y3cStDR
oEkMwYKQ2rFepl56WaZvIyW00hDvgspWbymGKHsRBYdnLkJjppTy6zB68pRF8RC3
eAI2/U0aMA7B9dlgBuVCd/csOhzPti3IZEzCoKuGKNVNLbVaPg4OCFL97+JcIQ5W
tkEUiFNi2nbnZIezz1eOol9trAK2O1/zlKXYCwGpe24BfDwUSMLwGInC7oNybEKt
5LXffuBm0y1WBUBqqCra
=iY0H
-----END PGP SIGNATURE-----

L
L
Leo Famulari wrote on 6 Feb 2016 09:49
(name . Christopher W Carpenter)(address . mordocai@mordocai.net)(address . 22571@debbugs.gnu.org)
20160206084903.GF1432@jasmine
On Fri, Feb 05, 2016 at 11:40:02PM -0600, Christopher W Carpenter wrote:
Toggle quote (14 lines)
>
> I talked with mark weaver about this on #guix and he asked me to send a
> mail.
>
> When doing guix package -i sbcl on my newly setup debian testing + guix
> machine and then attempting to run sbcl I got the error:
>
> fatal error encountered in SBCL pid 7492(tid 140737354086144):
> can't find core file at /usr/lib64/sbcl/sbcl.core
>
> Exporting SBCL_HOME=$HOME/.guix-profile/lib/sbcl fixes this for me. The
> way this seems to be handled other places is by printing a message after
> the package install explaining that this may be needed.

There is a pretty good description of search-paths here:

Basically, you can list the environment variables needed by the package
in the package definition. Then, users can view them or set them
automatically. There are some examples in the package tree.

Toggle quote (5 lines)
>
> This seems like the appropriate thing to do to me. I'd love to submit a
> patch if someone can guide me through it, I just started seriously
> trying guix out today.

I hope this helps. Feel free to ask for more help!

Toggle quote (6 lines)
>
> Thanks,
> Christopher Carpenter
>
> P.S. Please make sure to CC me in replies, I have not joined the mailing
> list (yet).
L
L
Ludovic Courtès wrote on 6 Feb 2016 14:06
(name . Christopher W Carpenter)(address . mordocai@mordocai.net)(address . 22571@debbugs.gnu.org)
874mdm0yz2.fsf@gnu.org
Christopher W Carpenter <mordocai@mordocai.net> skribis:

Toggle quote (6 lines)
> When doing guix package -i sbcl on my newly setup debian testing + guix
> machine and then attempting to run sbcl I got the error:
>
> fatal error encountered in SBCL pid 7492(tid 140737354086144):
> can't find core file at /usr/lib64/sbcl/sbcl.core

Are you sure you were running ~/.guix-profile/bin/sbcl?

I’ve just tried this on GuixSD, to check whether sbcl systematically
looks for things in /usr:

Toggle snippet (16 lines)
$ strace -f -o ,,s $(guix build sbcl | head -1)/bin/sbcl
This is SBCL 1.2.8, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (+ 2 3)

5
*
$ grep /usr ,,s
[ nothing ]

However, it loads /etc/sbclrc. Could it be that your host distro
provides such a file, which tweaks sbcl into reading from /usr/lib64?

Thanks for the report,
Ludo’.
C
C
Christopher W Carpenter wrote on 10 Feb 2016 02:57
Re: bug#22571: Acknowledgement (Guix on Debian Testing sbcl package needs warning to set SBCL_HOME)
(address . 22571@debbugs.gnu.org)
878u2tpbt4.fsf@mordocai.net
I found the problem, and this can be closed IMHO.

I use StumpWM, which is written in common lisp and I use sbcl to run it.
It appears that when the stumpwm image is created the SBCL_HOME
environment variable's state at that time is stored. In addition, for
whatever reason, any processes started from stumpwm will have a
SBCL_HOME environment variable with that same value.

Therefore, my issue was that my stumpwm that was starting my
processes(and the processess themselves)
had an old, incorrect value for SBCL_HOME which would then cause this
error.

Interesting "bug" to find! Thanks for the help!

Christopher Carpenter
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJWupj3AAoJEFJw6mniKuelQp4P/0ZazgFu9smWrUWEwoUZghXC
1CBbHRSOevS4BRlTt/IEPcWl93lEHcjmpmGfq20ynQMw1q1oL2yK1wydZ+7gWcHL
sYiRLA2gt1k5ksuTCryT9wrtskTG6OSoLOq5gWj3eI7bC8QPyi2qt40RuHNcMxch
RD152Ku1iFXjbZV8AL4H2AVvEwiQ7F5jgt55omYnqo3+KI82kdtkjodqb/LciSIj
bFkQFDj0jsS0r19diyIQ1OQnX0FA7gVuYoa7cb3lXiLzxhRFj4BxF6sI7ckyYyID
ZSyZkfX0xnPaljg9Fhm6h/DBuXJfNW0GwuA/iisOoLgPjqF/8GEPpAu6RLWkp8bc
pqLDu61f30Rus8VassBnbkBDcw0x4zPvDQf09ClOBrcCDWI5v2sZIsgmFXIeaSBk
g01NTcx729XrJqfVCgpuFbNrZtS6TuMVsk+uoGpfrPcZ0kQZ5nre0FnDYe5BEpS7
K3aoCnMYU61F2ifLHmrIXU6spal0cvu9SjPGA8S1Z9cPWgPPFOxJVGTLYEq0l7qJ
ZoXQofX9PWMhdt4Q+VFmZTLTzKw6U5bfhLfEnE8CvLfi6iwvrF6Kw6NoTuYgOJ0Y
EJSU5j8+LfqfWq61tjY42aBwe9rw/nxjAR0Gw89YXCkZyhFh1isXz/Fq3ZRhxVCV
JpWP7ExGH9cg2bLPL684
=rsLZ
-----END PGP SIGNATURE-----

A
A
Alex Kost wrote on 10 Feb 2016 11:20
(name . Christopher W Carpenter)(address . mordocai@mordocai.net)(address . 22571@debbugs.gnu.org)
87h9hg6f4v.fsf@gmail.com
Christopher W Carpenter (2016-02-10 04:57 +0300) wrote:

Toggle quote (13 lines)
> I found the problem, and this can be closed IMHO.
>
> I use StumpWM, which is written in common lisp and I use sbcl to run it.
> It appears that when the stumpwm image is created the SBCL_HOME
> environment variable's state at that time is stored. In addition, for
> whatever reason, any processes started from stumpwm will have a
> SBCL_HOME environment variable with that same value.
>
> Therefore, my issue was that my stumpwm that was starting my
> processes(and the processess themselves)
> had an old, incorrect value for SBCL_HOME which would then cause this
> error.

Oh, cool, I also use stumpwm but I've never noticed it because I compile
stumpwm using sbcl from Guix, so my value of SBCL_HOME is:

"/gnu/store/qkrqqb81hs6nypvzbgi8ixrrza78gvlb-sbcl-1.2.8/lib/sbcl"

Toggle quote (2 lines)
> Interesting "bug" to find! Thanks for the help!

Thanks for discovering it! It's good to know this thing (just in case).

--
Alex
A
A
Alex Kost wrote on 10 Feb 2016 11:23
control message for bug #22571
(address . control@debbugs.gnu.org)
87fux06eyo.fsf@gmail.com
tags 22571 fixed
close 22571 24.5
L
L
Ludovic Courtès wrote on 10 Feb 2016 22:32
Re: bug#22571: Acknowledgement (Guix on Debian Testing sbcl package needs warning to set SBCL_HOME)
(name . Christopher W Carpenter)(address . mordocai@mordocai.net)(address . 22571-done@debbugs.gnu.org)
87d1s4i754.fsf@gnu.org
Christopher W Carpenter <mordocai@mordocai.net> skribis:

Toggle quote (15 lines)
> I found the problem, and this can be closed IMHO.
>
> I use StumpWM, which is written in common lisp and I use sbcl to run it.
> It appears that when the stumpwm image is created the SBCL_HOME
> environment variable's state at that time is stored. In addition, for
> whatever reason, any processes started from stumpwm will have a
> SBCL_HOME environment variable with that same value.
>
> Therefore, my issue was that my stumpwm that was starting my
> processes(and the processess themselves)
> had an old, incorrect value for SBCL_HOME which would then cause this
> error.
>
> Interesting "bug" to find! Thanks for the help!

Indeed, thanks for letting us know!

Ludo’.
Closed
?