Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 233489 - trouble to build pdftk
Summary: trouble to build pdftk
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: java-1.5.0-gcj
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Thomas Fitzsimmons
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-03-22 18:49 UTC by Jochen Schmitt
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version: 1.41-5.fc7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-04-12 15:35:07 UTC


Attachments (Terms of Use)

Description Jochen Schmitt 2007-03-22 18:49:49 UTC
When I try to build pdftk for the devel branch; i will get the following error
message:

gcjh --classpath="." Gnu;
Exception in thread "main" java.io.IOException: can't find class file
java_local/security/Provider.class in
java.net.URLClassLoader{urls=[file:/builddir/build/BUILD/pdftk-1.41/java_libs/gnu_local/j
ava/security/provider/./,file:/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre/lib/rt.jar],
parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:./],
parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], pare
nt=null}}}
   at gnu.classpath.tools.javah.Main.getClass(libgcj-tools.so.8rh)
   at gnu.classpath.tools.javah.ClassWrapper.linkSupers(libgcj-tools.so.8rh)
   at gnu.classpath.tools.javah.ClassWrapper.printFully(libgcj-tools.so.8rh)
   at gnu.classpath.tools.javah.CniIncludePrinter.printClass(libgcj-tools.so.8rh)
   at gnu.classpath.tools.javah.Main.writeHeaders(libgcj-tools.so.8rh)
   at gnu.classpath.tools.javah.Main.run(libgcj-tools.so.8rh)
   at gnu.classpath.tools.javah.GcjhMain.main(libgcj-tools.so.8rh)
make[2]: *** [Gnu.h] Error 1
rm Gnu.class
make[2]: Leaving directory
`/builddir/build/BUILD/pdftk-1.41/java_libs/gnu_local/java/security/provider'
make[1]: *** [libgcj_local] Error 2

Comment 1 Thomas Fitzsimmons 2007-03-22 21:53:02 UTC
I think the --classpath option should be ".:../../../..".

That said, Rawhide pdftk shouldn't need gcjh to build: it should be able to
BuildRequire system dependencies rather than bundling the dependencies under
java_libs.


Comment 2 Thomas Fitzsimmons 2007-03-22 21:58:02 UTC
I filed a separate bug for the dependency issue:

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=233514


Comment 3 Tom Tromey 2007-03-26 15:34:44 UTC
I looked at pdftk a little a week or two ago.

It included some classpath security code... this seemed weird to me.

Its use of gcjh worked with the old gcjh, but won't work any more.
gcjh really needs to traverse the class hierarchy (both for miranda
methods and also to properly handle bridge methods).  So the approach
pdftk takes to invoking gcjh no longer works, and can't really be made
to work.

Instead a package has to invoke gcjh in a "java-like" way.  So eg when
making a header for "p1.p2.Class", gcjh ought to be invoked from
$basedir, not $basedir/p1/p2/ -- I hope this makes sense.  If the target
class(es) has a dependency on some other set of classes, these must be
findable by gcjh using the class path.

Comment 4 Thomas Fitzsimmons 2007-04-12 15:35:07 UTC
I committed a patch to invoke gcjh in the new way and rebuilt this package in
Rawhide.



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