Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 37451 - Compiling ORBit-0.5.17 ebuild fails.
Summary: Compiling ORBit-0.5.17 ebuild fails.
Status: VERIFIED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-01-06 20:10 UTC by Aaron Lake
Modified: 2004-01-11 08:42 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 Aaron Lake 2004-01-06 20:10:45 UTC
Ebuild of ORBit-0.5.17 fails on compile.  I've tried -02 cflags settings, and building a previous version of ORBit-0.5.16.ebuild

Reproducible: Always
Steps to Reproduce:
1.emerge -u orbit
2.
3.

Actual Results:  
------------------- SNIP ------------------
gcc -mcpu=athlon-xp -O3 -pipe -o .libs/orbit-idl orbit-idl-main.o
orbit-idl-driver.o orbit-idl-backends.o orbit-idl-passes.o
orbit-idl-genmarshal.o orbit-idl-utils.o -rdynamic 
backends/c/liborbit-c-backend.a ../../libIDL/.libs/libIDL.so -L/usr/lib
../../popt/.libs/libpopt.a /usr/lib/libgmodule.so /usr/lib/libglib.so -ldl -lm
creating orbit-idl
make[4]: Leaving directory
`/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler'
make[3]: Leaving directory
`/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler'
Making all in orb
make[3]: Entering directory
`/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orb'
../../src/orbit-idl-compiler/orbit-idl --noskels
../../src/daemons/interface_repository/interface_repository.idl
make[3]: *** [my_ir_stuff] Illegal instruction
make[3]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orb'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17'
make: *** [all-recursive-am] Error 2
 
!!! ERROR: gnome-base/ORBit-0.5.17 failed.
!!! Function src_compile, Line 40, Exitcode 2
!!! (no error message)

Expected Results:  
Compile should have completed successfully.

# emerge --info
Portage 2.0.49-r20 (default-x86-1.4, gcc-3.3.2, glibc-2.3.3_pre20031222-r0, 2.6.0)
=================================================================
System uname: 2.6.0 i686 AMD Athlon(TM)Processor
Gentoo Base System version 1.4.3.12
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-mcpu=athlon-xp -O3 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O2 -mcpu=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo ftp://gentoo.noved.org/
ftp://csociety-ftp.ecn.purdue.edu/pub/gentoo/ http://gentoo.seren.com/gentoo"
MAKEOPTS="-j6"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X alsa apm arts avi berkdb crypt cups encode esd evo foomaticdb gdbm gif
gnome gpm gstreamer gtk gtk2 imlib java jpeg libg++ libwww mad mikmod motif
mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python
qt quicktime readline samba sdl slang spell ssl svga tcpd tiff truetype x86 xml
xml2 xmms xv zlib"
Comment 1 Spider (RETIRED) gentoo-dev 2004-01-06 23:16:21 UTC
This is weird :
make[3]: *** [my_ir_stuff] Illegal instruction


since that means something was generated with an instruction that your CPU doesn't handle.  Have you always used the same CFLAGS?  is it really a athlon-xp and not just an athlon-tbird? 


This could be in either orbit generated code, or in any subdependency thereof.. so it might be hard to track down.





Comment 2 Aaron Lake 2004-01-07 08:40:03 UTC
I'm positive I have an athlon-xp, and I've been using these same CFLAGS as long as I've had this distro up and running (4 days).
I've attempted with
# CFLAGS="" emerge ORBit-0.5.17.ebuild
Fails in same location.
Comment 3 Spider (RETIRED) gentoo-dev 2004-01-07 09:11:03 UTC
cut down MAKEOPTS to -j1 so we get a serial output , -j6 doesn't tell us which operation that crashes.

I'm still pretty sure this is a system / gcc related problem, so finding the binary that crashes with illegal instruction, then checking what it uses and links to, is a rather decent way of finding the error.
Comment 4 Aaron Lake 2004-01-07 13:05:59 UTC
# MAKEOPTS="-j1" emerge ORBit-0.5.17.ebuild
Returns the same result as previous:

gcc -mcpu=athlon-xp -O3 -pipe -o .libs/orbit-idl orbit-idl-main.o orbit-idl-driver.o orbit-idl-backends.o orbit-idl-passes.o orbit-idl-genmarshal.o orbit-idl-utils.o -rdynamic  backends/c/liborbit-c-backend.a ../../libIDL/.libs/libIDL.so -L/usr/lib ../../popt/.libs/libpopt.a /usr/lib/libgmodule.so /usr/lib/libglib.so -ldl -lm
creating orbit-idl
make[4]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler'
make[3]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler'
Making all in orb
make[3]: Entering directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orb'
../../src/orbit-idl-compiler/orbit-idl --noskels ../../src/daemons/interface_repository/interface_repository.idl
make[3]: *** [my_ir_stuff] Illegal instruction
make[3]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orb'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17'
make: *** [all-recursive-am] Error 2
 
!!! ERROR: gnome-base/ORBit-0.5.17 failed.
!!! Function src_compile, Line 40, Exitcode 2
!!! (no error message)
Comment 5 foser (RETIRED) gentoo-dev 2004-01-07 16:27:08 UTC
you might want to try a less recent gcc/glibc combo.
Comment 6 Aaron Lake 2004-01-08 04:25:36 UTC
Any recommendation on a version number of glibc/gcc I should be going with?
Comment 7 Aaron Lake 2004-01-08 13:22:50 UTC
Still same result with:
I've tried with CLFAGS="" as well with same result.

# qpkg glibc -v
sys-libs/glibc-2.3.2-r9 *

asmodean root # qpkg gcc -v
sys-devel/gcc-config-1.3.4 *
sys-devel/gcc-3.3.2 *
Comment 8 Spider (RETIRED) gentoo-dev 2004-01-08 13:41:28 UTC
can you run :
file /var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler/orbit-idl

and ldd /var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler/orbit-idl
Comment 9 Aaron Lake 2004-01-08 14:05:27 UTC
# /var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler/orbit-idl
Usage: lt-orbit-idl [-?] [-D ARG] [-I ARG] [--libIDL-version] [-l ARG] [-d ARG]
        [--nostubs] [--noskels] [--nocommon] [--noheaders] [--skeleton-impl]
        [--backenddir=DIR] [--c-output-formatter=PROGRAM] [--usage] <IDL files>
# ldd /var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler/orbit-idl
        not a dynamic executable
Comment 10 Spider (RETIRED) gentoo-dev 2004-01-08 15:52:16 UTC
I meant "file </some/where/somefile>"  actually, to show what kind of file it was. 
Comment 11 Aaron Lake 2004-01-08 16:21:57 UTC
Sorry, should have caught that.
# file /var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler/orbit-idl
/var/tmp/portage/ORBit-0.5.17/work/ORBit-0.5.17/src/orbit-idl-compiler/orbit-idl: Bourne shell script text executable
Comment 12 Spider (RETIRED) gentoo-dev 2004-01-08 17:37:13 UTC
can you rebuild bash and try again?
Comment 13 Aaron Lake 2004-01-08 18:52:32 UTC
# CFLAGS="" emerge bash
# CFLAGS="" emerge ORBit
Returns the same error.
Comment 14 Aaron Lake 2004-01-09 22:13:13 UTC
Any more ideas?  I'm stuck and can't compile much for gnome.
Comment 15 foser (RETIRED) gentoo-dev 2004-01-09 23:51:32 UTC
Are you sure you have an athlon-xp ? For me that shows up in the 'emerge info' as Athlon(TM) XP. Check the output of 'cat /proc/cpuinfo' to be more certain.

Second your CFLAGS & CXXFLAGS are not the same, that doesn't have to be a problem if you chose to compile that way. But few people work like that.

Third, you use mcpu in your C(XX)FLAGS, this doesn't optimize the binaries for your system, use -march for that.

If you compiled your whole system with -mcpu=athlon-xp while you don't have one it shouldn't have any impact in theory (besides gcc crashing, but comment #13 sort of rules that out), but i can't be sure that is not the problem unless you build your whole system with correct CFLAGS for that system.

Last, for a recent GNOME2 installation you should not need to have ORBit-0.x around. In theory it should be possible to run without any legacy gtk/gnome packages at this time (which ORBit-0.x is). So you should be able to get a working desktop without this package. Note that this is a workaround, with this problem standing i wouldn't trust my system to be stable like that.

So far i see some lack in understanding of certain basic issues (your inconistent 'emerge info' & the usage of '-02' (ZERO TWO) instead of '-O2' (LETTER O TWO) in your initial comment) and i suggest you review what you've done so far and maybe try re-installing with default settings to see if that solves the problem, you can work from there on optimizing your system.
Comment 16 Aaron Lake 2004-01-10 12:22:42 UTC
I'm going through the painstaking process of emerging everything one more time.  `emerge -e world`.  Hopefully this'll solve any problems I may have had.

I've corrected my CFLAGS and CXXFLAGS accordingly.  I'll update when this is done.  (probably a few days =/)
Comment 17 Aaron Lake 2004-01-11 08:32:44 UTC
Here's what I changed:
CFLAGS="-mcpu=athlon-tbird -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
`emerge -e world`
Emerging ORBit works fine now.  Must have been the athlon setting.  Thanks for your help.
Comment 18 foser (RETIRED) gentoo-dev 2004-01-11 08:42:12 UTC
Good to hear that it got fixed, too bad you had to recompile a whole lot ;)

A last remark, you use -mcpu in your CFLAGS, if you want the resulting binaries optimized for your system you should use -march instead (-march implies -mcpu). -mcpu only optimizes the compiling process (for more info see 'man gcc').