You are not logged in.

#1 2019-09-03 18:11:05

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

[Solved] Help in troubleshooting segmentation fault running gmchess

I installed gmchess mainly to be able to play Chinese chess (which I recently learned to play while in China). Running gmchess however I am getting a segmentation fault:

[brightchip@taichi-z270 ~]$ gmchess
Segmentation fault (core dumped)

The dump info:

[brightchip@taichi-z270 ~]$ sudo coredumpctl info 2343
           PID: 2343 (gmchess)
           UID: 1000 (brightchip)
           GID: 1000 (brightchip)
        Signal: 11 (SEGV)
     Timestamp: Tue 2019-09-03 18:58:36 BST (1min 26s ago)
  Command Line: gmchess
    Executable: /usr/bin/gmchess
 Control Group: /user.slice/user-1000.slice/session-2.scope
          Unit: session-2.scope
         Slice: user-1000.slice
       Session: 2
     Owner UID: 1000 (brightchip)
       Boot ID: 904938d2f6f547508d28638b13aebba3
    Machine ID: c35de08926564c778a60a80f54c13a2c
      Hostname: taichi-z270
       Storage: /var/lib/systemd/coredump/core.gmchess.1000.904938d2f6f547508d28638b13aebba3.2343.1567533516000000.lz4
       Message: Process 2343 (gmchess) of user 1000 dumped core.
                
                Stack trace of thread 2343:
                #0  0x00007f03da5291ea _ZN3Gdk8Drawable11draw_pixbufERKN4Glib6RefPtrIKNS_2GCEEERKNS2_INS_6PixbufEEEiiiiiiNS_9RgbDitherEii (libgdkmm-2.4.so.1)
                #1  0x000055963917998a n/a (gmchess)
                #2  0x000055963917a0a6 n/a (gmchess)
                #3  0x00007f03da4d1ba9 _ZN4Glib17SignalProxyNormal19slot0_void_callbackEP8_GObjectPv (libglibmm-2.4.so.1)
                #4  0x00007f03d9442caa g_closure_invoke (libgobject-2.0.so.0)
                #5  0x00007f03d9430235 n/a (libgobject-2.0.so.0)
                #6  0x00007f03d943489a g_signal_emit_valist (libgobject-2.0.so.0)
                #7  0x00007f03d9435700 g_signal_emit (libgobject-2.0.so.0)
                #8  0x00007f03d997af72 n/a (libgtk-x11-2.0.so.0)
                #9  0x00007f03da88e24c _ZN3Gtk12Widget_Class13show_callbackEP10_GtkWidget (libgtkmm-2.4.so.1)
                #10 0x00007f03d9442caa g_closure_invoke (libgobject-2.0.so.0)
                #11 0x00007f03d9430854 n/a (libgobject-2.0.so.0)
                #12 0x00007f03d943489a g_signal_emit_valist (libgobject-2.0.so.0)
                #13 0x00007f03d9435700 g_signal_emit (libgobject-2.0.so.0)
                #14 0x00007f03d996fcc8 gtk_widget_show (libgtk-x11-2.0.so.0)
                #15 0x00007f03da88e12f _ZN3Gtk12Widget_Class23show_all_vfunc_callbackEP10_GtkWidget (libgtkmm-2.4.so.1)
                #16 0x00005596391a05e2 n/a (gmchess)
                #17 0x0000559639176436 n/a (gmchess)
                #18 0x00007f03d9fa7ee3 __libc_start_main (libc.so.6)
                #19 0x000055963917702e n/a (gmchess)

And the gdb:

Reading symbols from /usr/bin/gmchess...
(No debugging symbols found in /usr/bin/gmchess)
[New LWP 2343]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `gmchess'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f03da5291ea in Gdk::Drawable::draw_pixbuf(Glib::RefPtr<Gdk::GC const> const&, Glib::RefPtr<Gdk::Pixbuf> const&, int, int, int, int, int, int, Gdk::RgbDither, int, int) ()
   from /usr/lib/libgdkmm-2.4.so.1
(gdb) bt
#0  0x00007f03da5291ea in Gdk::Drawable::draw_pixbuf(Glib::RefPtr<Gdk::GC const> const&, Glib::RefPtr<Gdk::Pixbuf> const&, int, int, int, int, int, int, Gdk::RgbDither, int, int) ()
    at /usr/lib/libgdkmm-2.4.so.1
#1  0x000055963917998a in  ()
#2  0x000055963917a0a6 in  ()
#3  0x00007f03da4d1ba9 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () at /usr/lib/libglibmm-2.4.so.1
#4  0x00007f03d9442caa in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#5  0x00007f03d9430235 in  () at /usr/lib/libgobject-2.0.so.0
#6  0x00007f03d943489a in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#7  0x00007f03d9435700 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#8  0x00007f03d997af72 in  () at /usr/lib/libgtk-x11-2.0.so.0
#9  0x00007f03da88e24c in Gtk::Widget_Class::show_callback(_GtkWidget*) () at /usr/lib/libgtkmm-2.4.so.1
#10 0x00007f03d9442caa in g_closure_invoke () at /usr/lib/libgobject-2.0.so.0
#11 0x00007f03d9430854 in  () at /usr/lib/libgobject-2.0.so.0
#12 0x00007f03d943489a in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#13 0x00007f03d9435700 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#14 0x00007f03d996fcc8 in gtk_widget_show () at /usr/lib/libgtk-x11-2.0.so.0
#15 0x00007f03da88e12f in Gtk::Widget_Class::show_all_vfunc_callback(_GtkWidget*) () at /usr/lib/libgtkmm-2.4.so.1
#16 0x00005596391a05e2 in  ()
#17 0x0000559639176436 in  ()
#18 0x00007f03d9fa7ee3 in __libc_start_main () at /usr/lib/libc.so.6
#19 0x000055963917702e in  ()
(gdb) 

Any help in sorting this out? I have installed the program before without any problem but this is a fairly new Arch reinstall.
I'm running on KDE with Xorg, SDDM so this might be some Gtk library missing.

Last edited by d_fajardo (2019-09-04 11:38:27)

Offline

#2 2019-09-03 18:25:11

2ManyDogs
Forum Moderator
Registered: 2012-01-15
Posts: 4,645

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

Did you read the first comment on the AUR page for gmchess?

Moving to AUR issues.


How to post. A sincere effort to use modest and proper language and grammar is a sign of respect toward the community.

Offline

#3 2019-09-03 18:56:16

loqs
Member
Registered: 2014-03-06
Posts: 17,192

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

Have you tried rebuilding the package with debug enabled?
The PKGBUILD does some unusual things though I doubt it is related.  It appears it could be simplified to

# Maintainer:  mrxx <mrxx at cyberhome dot at>
# Contributor: Jeff Youdontneedtoknow <jeffpublicjr at gmail dot com>
# Contributor: yetist <yetist@gmail.com>

pkgname=gmchess
pkgver=0.29.6.3
pkgrel=4
pkgdesc="Play Chinese chess (Xiangqi) against a human opponent or the computer"
arch=("i686" "x86_64")
url="https://salsa.debian.org/chinese-team/gmchess"
license=('GPL2')
depends=("gtkmm")
makedepends=('intltool')
conflicts=('gmchess-bin' 'eleeye-bin' 'convert-pgn-bin')
source=("$pkgname-$pkgver.tar.gz::https://salsa.debian.org/chinese-team/gmchess/-/archive/master/${pkgname}-master.tar.gz")
sha1sums=('26fb365af83d3364a699175718ca0573c0b62ca5'
          '8ce9d92ee9cda1709098d0a0a46ce9cca9fa83ba')

build() {
  cd $pkgname-master
  autoreconf --install
  ./configure --prefix=/usr
  make
} 

package(){
  cd $pkgname-master
  make  DESTDIR="$pkgdir" install
}

Offline

#4 2019-09-03 20:05:13

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

2ManyDogs wrote:

Did you read the first comment on the AUR page for gmchess?

No, I simply did a yay but I will do and thanks for pointing that out.

Offline

#5 2019-09-03 20:30:00

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

I tried what was suggested at the AUR page which is to install gmchess-bin instead of gmchess. It still crashes however.
I will try to rebuild with debug enabled.

Edit: Rebuild with debug-enabled but it didn't flag anything out of the ordinary.

Last edited by d_fajardo (2019-09-03 21:02:09)

Offline

#6 2019-09-03 21:05:47

loqs
Member
Registered: 2014-03-06
Posts: 17,192

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

Rebuilding with debug should prove a backtrace with

#1  0x000055963917998a in  ()
#2  0x000055963917a0a6 in  ()

replaced with meaningful content that might help diagnose the cause of the issue.

Offline

#7 2019-09-04 06:51:15

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

loqs wrote:

Rebuilding with debug should prove a backtrace

I have a feeling I'm not doing the makepkg debug properly. Basically what I did was alter /etc/makepkg.conf to from:

OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug)

to:

OPTIONS=(!strip docs !libtool !staticlibs emptydirs zipman purge debug)

and ran makepkg -f in the PKGBUILD directory of gmchess-bin.

I also tried adding options=(debug !strip) to PKGBUILD but it produced the same output.

Another question is the gmchess-bin depends install 3 other packages it depends on - eleeye-bin, convert-pgn-bin and libeval0-bin. Could the problem be from any of those as well?

Offline

#8 2019-09-04 09:03:55

loqs
Member
Registered: 2014-03-06
Posts: 17,192

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

The debug option only affects binaries built by makepkg. gmchess-bin is a binary package that does not build anything it repackages a binary provided by upstream.

Offline

#9 2019-09-04 09:56:33

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

I see. I'll resort back to gmchess and see what it gives.

I did an experiment. As I said I have a working version of the package in my laptop. I copied that working copy to my desktop, built it and I still get the error. My feeling is there's no problem with the package itself but I'm missing some gtk library. Hopefully a debug of gmchess will flag some clue.

Offline

#10 2019-09-04 10:09:23

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

Here is the debug output installing gmchess:
https://pastebin.com/tCN1rxVd

Offline

#11 2019-09-04 11:38:05

d_fajardo
Member
Registered: 2017-07-28
Posts: 1,563

Re: [Solved] Help in troubleshooting segmentation fault running gmchess

I tried something which for some reason made things work. First is I tried to see if I can play chinese chess using hoichess and xboard via xboard -fcp hoixiangqi. That ran without problem.
Next I uninstalled gmchess and reinstalled gmchess-bin again and voila! It starts working.
My suspicion is using hoichess to use xboard somehow made some configuration changes to xboard itself. gmchess was probably trying to find this configuration. But that is purely hypothetical.
Anyway thanks all for your help. I'll mark this as solved.

Offline

Board footer

Powered by FluxBB