Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 89205 - LyX 1.3.5, 1.3.5-r1 and 1.3.4 Segfault
Summary: LyX 1.3.5, 1.3.5-r1 and 1.3.4 Segfault
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Text-Markup Team (OBSOLETE)
URL:
Whiteboard:
Keywords:
: 89208 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-04-15 10:37 UTC by Chris Nicola
Modified: 2005-08-17 09:24 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Nicola 2005-04-15 10:37:55 UTC
When I lyx I simply get 'Segmentation Fault'.  I have tried all of the above versions.  i686-pc-linux-gnu-3.4.3-20050110 is the version of GCC I am using.  I have just switched it to 3.3.4 to see if that helps (that is why the emerge info post says gcc-3.3.4).

Reproducible: Always
Steps to Reproduce:
1.
2.
3.




Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.4, glibc-2.3.4.20050125-r1,
2.6.11-gentoo-r4 i686)
=================================================================
System uname: 2.6.11-gentoo-r4 i686 AMD Athlon(tm) XP 3200+
Gentoo Base System version 1.6.10
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, Mar 18 2005, 08:44:12)]
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.5
sys-devel/binutils:  2.15.92.0.2-r8
sys-devel/libtool:   1.5.14
virtual/os-headers:  2.6.8.1-r4
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -pipe -march=athlon-xp -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O3 -pipe -march=athlon-xp -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://gentoo.netnitco.net
ftp://gentoo.netnitco.net/pub/mirrors/gentoo/source/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 3dnow 3dnowex X alsa apm avi berkdb bitmap-fonts cdr crypt cups curl
divx4linux dvd dvdr dvdread emboss encode erandom foomaticdb fortran gdbm gif
gimpprint gpm gtk gtk2 imagemagick imlib ipv6 java javascript jpeg libg++ libwww
live mad mmx mmx2 mp3 mpeg nas ncurses network nls nvidia ogg oggvorbis openal
opengl oss pam pdflib perl png python quicktime readline rtc sdl spell sse ssl
svga tcpd tetex tiff truetype truetype-fonts type1-fonts vorbis xml2 xv xvid
xvmc zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Comment 1 Seemant Kulleen (RETIRED) gentoo-dev 2005-04-15 12:34:53 UTC
*** Bug 89208 has been marked as a duplicate of this bug. ***
Comment 2 Mamoru KOMACHI (RETIRED) gentoo-dev 2005-04-15 12:42:24 UTC
would you compile lyx with CXXFLAGS="-O -pipe" and see it solves
the problem?
Comment 3 Chris Nicola 2005-05-24 10:31:42 UTC
Sorry about the duplacate post.  I must have reloaded the page.  
I have tested Lyx-1.3.5-r2 with the flags below and it works fine.  Note that r2
also does not work with my usual flag set. 

Do my optimization flags go to far or is Lyx just a little buggy when it comes
to GCC 3.4
Comment 4 Chris Nicola 2005-05-24 10:34:18 UTC
Sorry my mistake.  It is NOT working with 3.4.3 even with the simplified flags.
 I will have to recompile with 3.3.4 again.
Comment 5 nash 2005-05-29 10:43:37 UTC
I also have this bug, but I compiled lyx with gcc-3.3.5-20050130 using both
types of optimization settings in CXXFLAGS. My emerge info is below. I ran gdb
on this and it seems to be font related. Here's the stack trace from gdb at the
time of the SIGSEGV. I'm going to try recompiling libforms.so.1 with less
aggressive optimization to see if that helps (who knows?).

#0  0xb7e17467 in XFreeFontSet () from /usr/lib/libX11.so.6
#1  0x08340a90 in XNextEvent ()
#2  0x083412f2 in XNextEvent ()
#3  0x083d28a6 in XNextEvent ()
#4  0x083d27a3 in XNextEvent ()
#5  0x08264c71 in std::deque<int, std::allocator<int>
>::_M_reallocate_map(unsigned, bool) ()
#6  0x082649d4 in std::deque<int, std::allocator<int>
>::_M_reallocate_map(unsigned, bool) ()
#7  0x080601a2 in std::basic_string<char, std::char_traits<char>,
std::allocator<char> > std::operator+<char, std::char_traits<char>,
std::allocator<char> >(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&) ()
#8  0x08060b30 in std::basic_string<char, std::char_traits<char>,
std::allocator<char> > std::operator+<char, std::char_traits<char>,
std::allocator<char> >(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&) ()
#9  0x08068d9c in std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >::~basic_stringbuf() ()
#10 0x0806a302 in std::string::string<char*>(char*, char*, std::allocator<char>
const&) ()
#11 0x08067668 in std::basic_string<char, std::char_traits<char>,
std::allocator<char> > std::operator+<char, std::char_traits<char>,
std::allocator<char> >(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&) ()
#12 0x083348e1 in std::deque<int, std::allocator<int>
>::_M_reallocate_map(unsigned, bool) ()
#13 0x08334ce7 in std::deque<int, std::allocator<int>
>::_M_reallocate_map(unsigned, bool) ()
#14 0x08332d12 in std::deque<int, std::allocator<int>
>::_M_reallocate_map(unsigned, bool) ()
#15 0xb7f267e2 in fl_set_object_helper () from /usr/lib/libforms.so.1
#16 0x00000001 in ?? ()


Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.3.5-20050130,
glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r9 i686)
=================================================================
System uname: 2.6.11-gentoo-r9 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System version 1.7.1
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, Apr 30 2005, 01:34:29)]
dev-lang/python:     2.3.5
sys-apps/sandbox:    [Not Present]
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.8.5-r3, 1.5, 1.7.9-r1, 1.6.3, 1.4_p6, 1.9.5
sys-devel/binutils:  2.15.92.0.2-r7
sys-devel/libtool:   1.5.16
virtual/os-headers:  2.6.8.1-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-mcpu=pentium4 -O5 -pipe -msse2"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env
/usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-mcpu=pentium4 -O5 -pipe -msse2"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
LINGUAS="zh_CN zh_TW ja ko"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X a52 aac aalib acpi aim alsa apache2 apm arts audiofile avi
bash-completion bcmath berkdb bitmap-fonts bmp bonobo bzip2 bzlib calendar cdr
cjk crypt cscope ctype cups curl dga dio directfb divx4linux doc dvd dvdread eds
emacs emboss encode esd ethereal evo expat fam fbcon foomaticdb fortran freetds
ftp gcj gd gdbm gif ginac glut gmp gnome gnutls gpm gstreamer gtk gtk2 gtkhtml
guile iconv icq imagemagick imap imlib ipv6 jabber jack java javascript joystick
jpeg junit lcms ldap libg++ libwww mad maildir mbox mikmod mime mmap mmx motif
mozilla mp3 mpeg msn mysql ncurses nls nptl ogg oggvorbis opengl oss pam pcre
pdflib perl plotutils png portaudio posix postgres python quicktime readline
samba sdl sharedmem sndfile sockets sox speex spell sse sse2 ssl svg svga sysfs
sysvipc tcpd tetex tiff truetype truetype-fonts type1-fonts unicode usb
userlocales videos vorbis wifi win32codecs xine xinerama xml xml2 xmlrpc xmms
xpm xsl xv yahoo zlib linguas_zh_CN linguas_zh_TW linguas_ja linguas_ko
userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY

Comment 6 nash 2005-05-29 11:08:36 UTC
Well, I think I figured it out. My problem appears to have been that I didn't
have all my fonts properly setup. The first thing I tried was running
gnome-font-install as instructed within /usr/share/fonts/README.installer:

    gnome-font-install --debug --smart

This spewed alot of output, but when I ran lyx I got the same problem. Fek. So,
then I decided I needed to add the new fontpaths I had into my xorg.conf. I ran:

    find /usr/share/fonts/* -type d -prune | \
      sed 's/^/    FontPath  "/;s/$/"/;' \
      >/tmp/fontdirs

Then, I added replaced any existing FontPath lines in my xorg.conf with these
lines. I then restarted XWindows and now lyx works like a charm! I'm guessing
that the problem is that lyx discovers fonts using some technique that's aware
of what's in /usr/share/fonts/ whereas the Xorg server needs you to specify
fontpaths to find out about fonts.
Comment 7 Chris Nicola 2005-08-17 09:24:41 UTC
Just looking for an update on this.  1.3.6 still has this problem and I am
wondering if it is either:

1. Just me
2. Actually a font problem as the previous poster suggested.
3. Lyx will never work with GCC 3.4

If it is either 2 or 3 can the ebuild be changed to require the use of GCC 3.3
or patched to fix the font problem?  For now I just keep changing GCC versions,
remerging it and then changing the GCC version back after every upgrade