Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 265543 - gcc-3.4.6 fails to compile with gcj (libjava) option
Summary: gcc-3.4.6 fails to compile with gcj (libjava) option
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL: N/a
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-04-09 12:12 UTC by Robert Bradbury
Modified: 2009-04-12 12:56 UTC (History)
0 users

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


Attachments
emerge --info (info.lst,3.85 KB, text/plain)
2009-04-10 10:35 UTC, Robert Bradbury
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Bradbury 2009-04-09 12:12:45 UTC
If one attempts to compile the older versions (e.g. 3.4.6) of the C compiler (gcc) with the gcj (libjava?) option it will fail.

Reproducible: Always

Steps to Reproduce:
1. Add gcj to sys-devel/gcc in /etc/portage/package.use
2. emerge =sys-devel/gcc-3.4.6-r2
3. emerge will fail

Actual Results:  
Most of the comple proceeds properly.  It appears to fail attempting to configure libjava, in particular it is looking for:
  checking for GTK+ - version >= 2.2.0... no
But in fact the system is running gtk+-2.14.7.

Expected Results:  
The gtk+ version test should work and gcc should compile.

Removing gcj from the USE flags allows the compile to proceed past that point.  The current ebuild should be fixed to prevent a compile from taking place if the gcj flag is set.  The real fix should be to change the configure so that it works properly with both older (e.g. gtk+-2.2) as well as newer (e.g. gtk+-2.14.7) versions.  I have no idea at what point gtk+ was upgraded forcing the old test to fail.
Comment 1 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2009-04-10 08:52:41 UTC
Please post your "emerge --info" and attach the config.log file of the failed emerge to this bug.
Comment 2 Robert Bradbury 2009-04-10 10:35:32 UTC
Created attachment 187869 [details]
emerge --info
Comment 3 Robert Bradbury 2009-04-10 10:50:11 UTC
Can't attach the config/build log (its too simple to remove gcj from the USE flags and recompile it -- which does work, but overwrites and then deletes the contents of the build directory).

Best I can do is the output from the build that failed...
It looks like the critical parts are:
...
creating ./config.status
creating Makefile
creating include/Makefile
Configuring in i686-pc-linux-gnu/libjava
creating cache ./config.cache
checking whether ln -s works... yes
checking for a BSD compatible install... /bin/install -c
checking whether build environment is sane... yes
...
checking for memcpy... yes
checking for dlopen in -ldl... (cached) no
checking for socket libraries... checking for connect... yes
checking for gethostbyname... yes

checking for deflate in -lz... yes
checking for pkg-config... /usr/bin/pkg-config
checking for GTK+ - version >= 2.2.0... no
*** Could not run GTK+ test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK+ is incorrectly installed.
make[1]: *** [configure-target-libjava] Error 1

I think I checked this last time this version of gcc wouldn't compile and I think the configure "GTK+" test is trying to compile a program with a function that is no longer in up-to-date GTK (2.14.7) libraries.  Check the libjava configure file to see how it is checking the GTK+ version.
Comment 4 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2009-04-12 07:39:35 UTC
Bad excuse. You can simply re-enable the USE flag and re-emerge the affected gcc-package.