Bug 158496 - The src.rpm doesn't build on a free system
The src.rpm doesn't build on a free system
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: db4 (Show other bugs)
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Paul Nasrat
Depends On:
  Show dependency treegraph
Reported: 2005-05-22 20:16 EDT by Zenon Panoussis
Modified: 2007-11-30 17:07 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2005-05-31 13:31:42 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Zenon Panoussis 2005-05-22 20:16:53 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050501 Red Hat/1.7.7-

Description of problem:
db4 can no longer be compiled on a free ("free" as in "OSI approved") system; see "Actual results" for the errors.  

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Try to compile db4 on a full and up to date installation of the RHEL sources published on ftp.redhat.com .

2. Fail.

Actual Results:  # rpmbuild --rebuild db4-4.1.25-8.1.src.rpm
checking for javac... javac
checking if javac works... configure: error: The Java compiler javac failed (see config.log, check the CLASSPATH?)


# locate db.jar

# export CLASSPATH=/usr/share/java


# rpmbuild --rebuild db4-4.1.25-8.1.src.rpm
(loops back to same error)

Additional info:
Comment 1 Paul Nasrat 2005-05-22 20:26:20 EDT
Have you tried with gcj and libgcj installed that provide the javac wrapper script?
Comment 2 Zenon Panoussis 2005-05-22 20:51:47 EDT
It's a full install, compiled from source and updated all the way up to db4-U5:

# rpm -qa |grep gcj

If what's needed to compile db4 is not there, then it's not part of the free (as
in "OSI-approved") RHEL source distribution. 

db4 is crucial to rpm and to the entire system, so it should not depend on
non-free packages. I'm still not sure it actually does, but if it does we'll
need a new bugzilla category "severity: political". 
Comment 3 Paul Nasrat 2005-05-22 21:19:12 EDT
checking for javac... javac
checking if javac works... yes
checking for jar... jar
checking for javac... /usr/bin/javac
checking absolute path of javac... /usr/bin/javac
checking symlink for /usr/bin/javac... /etc/alternatives/javac
checking symlink for /etc/alternatives/javac...

rpm -qf  /usr/share/java/libgcj-javac-placeholder.sh
Comment 4 Paul Nasrat 2005-05-22 21:20:34 EDT
Can you check if your alternative setup is broken

which javac
ls -l /etc/alternatives/javac

Check rpm --scripts -q libgcj for what should be setup.
Comment 5 Zenon Panoussis 2005-05-23 15:41:46 EDT
Indeed, my java installation was not properly referenced. It also was 1.5, which
db4 doesn't agree with. 'rpm -hiv IBMJava2-SDK-1.4.2-1.0.i386.rpm; export
PATH=/opt/IBMJava2-142/bin:$PATH' got db4 to compile. 

The political issue remains though. Bugzilla is not the place to debate it, so I
would just like to suggest breaking out db4-java into a separate .src.rpm, so
that db4 itself can be compiled on a 100% free (speech and beer) system.
Comment 6 Paul Nasrat 2005-05-23 16:01:46 EDT
It builds with gcj which is Free Software http://gcc.gnu.org/java/, there is no
requirement for a JDK and it builds fine on a 100% free software install of
RHEL. Which means no political issue.  FSF is happy for gcj to be used.

Please remove the IBM JDK (you should build jpackage style packages besides
http://jpackage.org/rebuilding.php) and try building with the gcj wrapper
scripts. This is working fine for me.

Note You need to log in before you can comment on or make changes to this bug.