Emacs crashes due to symbol lookup error to rsvg_handle_set_stylesheet

  • Open
  • quality assurance status badge
Details
4 participants
  • arnaud.lechevallier
  • grokking Stuff
  • Liliana Marie Prikler
  • Maxime Devos
Owner
unassigned
Submitted by
grokking Stuff
Severity
normal
G
G
grokking Stuff wrote on 25 Aug 2022 21:12
(address . bug-guix@gnu.org)
173C51E9-89F7-49D2-98E3-19C515FD406E@gmail.com
Hey fellow Guix users,

I’m trying to use Emacs on my system but it tends to crash unexpectedly.

When launching it from a terminal, I get:

Toggle quote (6 lines)
> grokkingstuff@grokkingNoether ~$ emacs
> (process:32402): Gtk-WARNING **: 22:59:14.455: Locale not supported by C library.
> Using the fallback 'C' locale.
> /home/grokkingstuff/.guix-profile/bin/emacs: symbol lookup error: /home/grokkingstuff/.guix-profile/bin/emacs: undefined symbol: rsvg_handle_set_stylesheet


Trying to use emacs -q, I get a similar message, but it just crashes quickly.

Toggle quote (5 lines)
> ^Cgrokkingstuff@grokkingNoether ~$ emacs-29.0.50 -q
> (process:4018): Gtk-WARNING **: 23:08:35.207: Locale not supported by C library.
> Using the fallback 'C' locale.
> /home/grokkingstuff/.guix-profile/bin/emacs-29.0.50: symbol lookup error: /home/grokkingstuff/.guix-profile/bin/emacs-29.0.50: undefined symbol: rsvg_handle_set_stylesheet

I have librsvg installed, and a few Google searches seem to indicate that this is the issue. I’ve tried building from source using "guix install -S” but I don’t see any difference.

If there’s anything I could do to assist with this bug report, please let me know. Thank you so much for your time and effort.

Sincerely,
Vishakh Kumar (grokkingstuff)
L
L
Liliana Marie Prikler wrote on 26 Aug 2022 17:41
a02be1face44d39c89feb7e458a3e3406da7ba2d.camel@gmail.com
Am Donnerstag, dem 25.08.2022 um 23:12 +0400 schrieb grokking Stuff:
Toggle quote (14 lines)
> Hey fellow Guix users,
>
> I’m trying to use Emacs on my system but it tends to crash
> unexpectedly.
>
> When launching it from a terminal, I get:
>
> > grokkingstuff@grokkingNoether ~$ emacs
> > (process:32402): Gtk-WARNING **: 22:59:14.455: Locale not supported
> > by C library.
> >         Using the fallback 'C' locale.
> > /home/grokkingstuff/.guix-profile/bin/emacs: symbol lookup error:
> > /home/grokkingstuff/.guix-profile/bin/emacs: undefined symbol:
> > rsvg_handle_set_stylesheet
Looking at this output, it seems Emacs is trying to dynamically link
librsvg. Two issues spring to mind: First, this kind of linkage is not
that well supported by Guix, so we tend to substitute* the full path.
Is this done for librsvg? Second, there might be a (version) mismatch
between the librsvg Emacs expects and the one it gets. Does
rsvg_handle_set_stylesheet actually exist as a symbol in your librsvg?

Cheers
A
A
arnaud.lechevallier wrote on 10 Nov 2022 19:13
Emacs crashes due to symbol lookup error to rsvg_handle_set_stylesheet
(address . 57417@debbugs.gnu.org)
1825883117.357009617.1668104007933.JavaMail.root@zimbra81-e14.priv.proxad.net
Hi there,

I'm facing the same issue from a fresh 1.3 installation I did on a VM.
Emacs28.2 is linked against librsvg-2.40.21 which do not provide rsvg_handle_set_stylesheet function.

altomcat@guix ~/.config$ libtree /gnu/store/jpi4h6afvkifypxjxdpgrdm4shnmavwf-emacs-28.2/bin/.emacs-28.2-real | grep rsvg
? ? ? ? /gnu/store/3r3sxc1ywqs93rzj4z46p0cbdy1y1x7m-librsvg-2.40.21/lib
??? librsvg-2.so.2 [LD_LIBRARY_PATH]
? ? /gnu/store/3r3sxc1ywqs93rzj4z46p0cbdy1y1x7m-librsvg-2.40.21/lib
? ? /gnu/store/3r3sxc1ywqs93rzj4z46p0cbdy1y1x7m-librsvg-2.40.21/lib
Error [/gnu/store/jpi4h6afvkifypxjxdpgrdm4shnmavwf-emacs-28.2/bin/.emacs-28.2-real]: Not all dependencies were found

altomcat@guix ~/.config$ echo $LD_LIBRARY_PATH
/gnu/store/piln05qmyhyiqb3ggn2hvz1wagzvd8mc-gdk-pixbuf+svg-2.40.0/lib:/gnu/store/cydnixdcrvlizpcz3jkas5vpgd2dmd5z-gnome-bluetooth-3.34.2/lib:/gnu/store/3r3sxc1ywqs93rzj4z46p0cbdy1y1x7m-librsvg-2.40.21/lib:/gnu/store/8902rzyhkzs30c8z9xjkmmdrh2dq1ha7-libgweather-3.34.0/lib

Emacs runs well if I insert the path of librsvg-2.50.7 to LD_LIBRARY_PATH as follow

export LD_LIBRARY_PATH=/gnu/store/34yxh2p22yaiisb1ayp43ig06hdlj0wg-librsvg-2.50.7/lib:$LD_LIBRARY_PATH

I checked the package definition with `guix edit emacs`
...
;; When looking for libpng `configure' links with `-lpng -lz', so we
;; must also provide zlib as an input.
libpng
zlib
(if (target-x86-64?)
librsvg-bootstrap
librsvg-2.40) => need to be change ?
libxpm
libxml2
...

I'm a newbie and I hope these details can help. I would appreciate a little help to go further and solve this issue.
Thanks.
M
M
Maxime Devos wrote on 10 Nov 2022 23:31
a5d4f23c-b569-5172-7c68-678976a94b1f@telenet.be
On 10-11-2022 19:13, arnaud.lechevallier@free.fr wrote:
Toggle quote (16 lines)
>[...]
> I checked the package definition with `guix edit emacs`
> ...
> ;; When looking for libpng `configure' links with `-lpng -lz', so we
> ;; must also provide zlib as an input.
> libpng
> zlib
> (if (target-x86-64?)
> librsvg-bootstrap
> librsvg-2.40) => need to be change ?
> libxpm
> libxml2
> ...
>
> I'm a newbie and I hope these details can help. I would appreciate a little help to go further and solve this issue.
> Thanks.
Which architecture are you on? You can find out with
$ echo '(use-modules (guix utils)) (%current-system)' | guix repl
Same question for Vishakh Kumar.
Greetings,
Maxime.
Attachment: OpenPGP_signature
A
A
arnaud.lechevallier wrote on 11 Nov 2022 08:56
(address . 57417@debbugs.gnu.org)
1209629274.358911526.1668153368079.JavaMail.root@zimbra81-e14.priv.proxad.net
Hi Maxime,

Toggle quote (3 lines)
> Which architecture are you on? You can find out with
> $ echo '(use-modules (guix utils)) (%current-system)' | guix repl

$1 = "x86_64-linux"


Running emacs command failed but 'emacs -Q' works.

altomcat@guix ~$ emacs

(process:1306): Gtk-WARNING **: 08:41:25.920: Locale not supported by C library.
Using the fallback 'C' locale.
/home/altomcat/.guix-profile/bin/emacs: symbol lookup error: /home/altomcat/.guix-profile/bin/emacs: undefined symbol: rsvg_handle_set_stylesheet
altomcat@guix ~$ emacs -Q

(process:1314): Gtk-WARNING **: 08:41:29.223: Locale not supported by C library.
Using the fallback 'C' locale.

Thanks,
Arnaud
M
M
Maxime Devos wrote on 11 Nov 2022 17:00
d5cbfc2e-46d9-edd0-2029-baebeeb630ef@telenet.be
On 11-11-2022 08:56, arnaud.lechevallier@free.fr wrote:
Toggle quote (7 lines)
> Hi Maxime,
>
>> Which architecture are you on? You can find out with
>> $ echo '(use-modules (guix utils)) (%current-system)' | guix repl
>
> $1 = "x86_64-linux"
>
Then unless 'grokking Stuff' has a different system, I am not following
their proposal, because because on x86-64 ...
Toggle quote (3 lines)
> (if (target-x86-64?)
> librsvg-bootstrap
> librsvg-2.40) => need to be change ?
... the first branch would be taken, so changing the second branch would
have no effect. However, perhaps the rsvg_handle_set_stylesheet is only
present in the 'librsvg', and not in 'librsvg-bootstrap' (I wouldn't
expect that as they are the same version, but it could be tested). If
so, librsvg-for-system could be used instead, at cost of some rebuilds.
Greetings,
Maxime
Attachment: OpenPGP_signature
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 57417@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 57417
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch