Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 48760 - app-office/lyx-1.3.4 fails to compile with gcc 3.4
Summary: app-office/lyx-1.3.4 fails to compile with gcc 3.4
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Text-Markup Team (OBSOLETE)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 48528
  Show dependency tree
 
Reported: 2004-04-22 23:17 UTC by Mikko Tiihonen
Modified: 2004-12-06 23:38 UTC (History)
1 user (show)

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


Attachments
Compile log with empty CFLAGS and CXXFLAGS (3517-lyx-1.3.4.log,46.33 KB, text/plain)
2004-04-26 01:17 UTC, Mikko Tiihonen
Details
1.3.4-gcc3.4.patch (1.3.4-gcc3.4.patch,6.29 KB, patch)
2004-05-14 16:09 UTC, Ed Catmur
Details | Diff
1.3.4-gcc3.4.patch (1.3.4-gcc3.4.patch,6.74 KB, patch)
2004-05-14 18:06 UTC, Ed Catmur
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mikko Tiihonen 2004-04-22 23:17:24 UTC
/bin/sh ../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../src -I./../ -I../../boost  -isystem /usr/X11R6/include  -march=k8 -pipe -O2 -fomit-frame-pointer -frename-registers -fweb --param max-delay-slot-insn-search=300 --param max-delay-slot-live-search=1000 --param max-pending-list-length=100 --param max-gcse-passes=4 --param max-gcse-memory=104857600 --param max-crossjump-edges=400 -c -o formulamacro.lo `test -f 'formulamacro.C' || echo './'`formulamacro.C
g++ -DHAVE_CONFIG_H -I. -I. -I../../src -I./../ -I../../boost -isystem /usr/X11R6/include -march=k8 -pipe -O2 -fomit-frame-pointer -frename-registers -fweb --param max-delay-slot-insn-search=300 --param max-delay-slot-live-search=1000 --param max-pending-list-length=100 --param max-gcse-passes=4 --param max-gcse-memory=104857600 --param max-crossjump-edges=400 -c formulamacro.C -MT formulamacro.lo -MD -MP -MF .deps/formulamacro.TPlo
In file included from ../../boost/boost/config.hpp:35,
                 from ../../boost/boost/shared_ptr.hpp:18,
                 from ../../boost/boost/weak_ptr.hpp:17,
                 from formulabase.h:24,
                 from formulamacro.h:18,
                 from formulamacro.C:20:
../../boost/boost/config/compiler/gcc.hpp:57:7: warning: #warning "Unknown compiler version - please run the configure tests and report the results"
echo timestamp > formulabase.lo
source='math_amsarrayinset.C' object='math_amsarrayinset.lo' libtool=yes \
depfile='.deps/math_amsarrayinset.Plo' tmpdepfile='.deps/math_amsarrayinset.TPlo' \
depmode=gcc3 /bin/sh ../../config/depcomp \
/bin/sh ../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../src -I./../ -I../../boost  -isystem /usr/X11R6/include  -march=k8 -pipe -O2 -fomit-frame-pointer -frename-registers -fweb --param max-delay-slot-insn-search=300 --param max-delay-slot-live-search=1000 --param max-pending-list-length=100 --param max-gcse-passes=4 --param max-gcse-memory=104857600 --param max-crossjump-edges=400 -c -o math_amsarrayinset.lo `test -f 'math_amsarrayinset.C' || echo './'`math_amsarrayinset.C
In file included from ../../boost/boost/format.hpp:50,
                 from ../../src/BoostFormat.h:9,
                 from formulamacro.C:43:
../../boost/boost/format/format_implementation.hpp: In member function `boost::basic_format<Ch, Tr>& boost::basic_format<charT, Traits>::clear_bind(int)':
../../boost/boost/format/format_implementation.hpp:154: error: `out_of_range_bit' undeclared (first use this function)
../../boost/boost/format/format_implementation.hpp:154: error: (Each undeclared identifier is reported only once for each function it appears in.)
In file included from formulamacro.C:43:
../../src/BoostFormat.h: At global scope:
../../src/BoostFormat.h:18: error: expected unqualified-id before ';' token


Browsing through the lyx developer mailing list revealed that there was that someone has patches to compile lyx with gcc 3.4

Reproducible: Always
Steps to Reproduce:




Portage 2.0.50-r6 (default-amd64-2004.0, gcc-3.4.0, glibc-2.3.3_pre20040207-r0,
2.6.5-gentoo-r1)
=================================================================
System uname: 2.6.5-gentoo-r1 x86_64 4
Gentoo Base System version 1.4.9
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CFLAGS="-march=k8 -pipe -O2 -fomit-frame-pointer -frename-registers -fweb
--param max-delay-slot-insn-search=300 --param max-delay-slot-live-search=1000
--param max-pending-list-length=100 --param max-gcse-passes=4 --param
max-gcse-memory=104857600 --param max-crossjump-edges=400"
CHOST="x86_64-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /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="-march=k8 -pipe -O2 -fomit-frame-pointer -frename-registers -fweb
--param max-delay-slot-insn-search=300 --param max-delay-slot-live-search=1000
--param max-pending-list-length=100 --param max-gcse-passes=4 --param
max-gcse-memory=104857600 --param max-crossjump-edges=400"
DISTDIR="/mnt/2/portage-ebuilds/distfiles"
FEATURES="autoaddcvs ccache sandbox userpriv usersandbox"
GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/
ftp://trumpetti.atm.tut.fi/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/mnt/2/portage-ebuilds/packages"
PORTAGE_TMPDIR="/mnt/2/portage-tmp"
PORTDIR="/mnt/2/portage-ebuilds"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.se.gentoo.org/gentoo-portage"
USE="X alsa amd64 apm avi berkdb crypt doc encode ethereal foomaticdb freetype
gdbm gif gnome gpm gtk gtk2 imlib jpeg libg++ libwww mikmod mozilla moznoirc
mozsvg mpeg mysql ncurses nls nogcj nptl oggvorbis opengl oss pam pdflib perl
png postgres python quicktime readline ruby ruby18 sdl slang spell ssl tcpd
tetex truetype xml2 xmms xv zlib"
Comment 1 LordKow 2004-04-23 20:00:34 UTC
Perhaps make your CFLAGS right, not even god could make those CFLAGS work on an opteron at this point.
Comment 2 Mikko Tiihonen 2004-04-26 01:17:06 UTC
Created attachment 30064 [details]
Compile log with empty CFLAGS and CXXFLAGS

The problem is that gcc 3.4 is much more strict with the C++ code it compiles
and Lyx needs to be fixed. And as I said the and Lyx mailing lists already
contain some patches.

Btw. my CFLAGS are more conservative than -O3, the --param options just
increases the compilation time 3x in hope that more optimization passes would
save a few bytes. They do not imply different than optimization passes just
make the gcc try a bit harder as I don't mind longer compilation times.
Comment 3 Ed Catmur 2004-05-14 16:07:35 UTC
Thank you for failing to provide a link.

http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg68967.html
Comment 4 Ed Catmur 2004-05-14 16:09:15 UTC
Created attachment 31443 [details, diff]
1.3.4-gcc3.4.patch
Comment 5 Ed Catmur 2004-05-14 18:06:58 UTC
Created attachment 31446 [details, diff]
1.3.4-gcc3.4.patch

Extra part to patch needed.
Comment 6 Piojo 2004-07-04 14:22:02 UTC
The patch worked great on my machine. I didn't need anything else to make LyX compile here.
Comment 7 Mamoru KOMACHI (RETIRED) gentoo-dev 2004-12-06 23:38:43 UTC
This patch was applied to 1.3.4 already,
and 1.3.5 (upstream) contains the fixes.