Hello,
I wanted to use swt.jar in a software (http://iriverter.sourceforge.net/download.shtml), but it turned out to be quite complicated to achieve. Maybe I am doing something wrong, but if it is not the case, things should certainly be ameliorated.
I found swt.jar to be in libswt3-gtk2, in: /usr/lib/eclipse/swt-gtk-3.3.jar
Why not in /usr/share/java/swt.jar?
The compilation works with javac -classpath /usr/lib/eclipse/swt-gtk-3.3.jar:. org/thestaticvoid/iriverter/DVD.java
On fc7, there seems to be a need to do
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/eclipse/
before starting the application or /usr/lib/eclipse/libswt-pi-gtk-3346.so isn't found, but I hadn't that issue in F8:
!!! An unhandled exception occured: class java.lang.UnsatisfiedLinkError --- iriverter 0.16 --- --- Settings: --- --- !!! libswt-pi-gtk-3236: libswt-pi-gtk-3236.so: cannot open shared object file: No such file or directory !!! ....... more error messages ............
-- Pat
Hi,
* Patrice Dumas pertusus@free.fr [2007-10-08 17:14]:
/usr/lib/eclipse/swt-gtk-3.3.jar
Why not in /usr/share/java/swt.jar?
It's in %{_libdir} 'cause it's got arch-specific stuff in it. Care to submit a patch for eclipse.spec to add the version-less symlink?
On fc7, there seems to be a need to do
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/eclipse/
What VM is this with?
Andrew
On Mon, Oct 08, 2007 at 05:27:43PM -0400, Andrew Overholt wrote:
Hi,
- Patrice Dumas pertusus@free.fr [2007-10-08 17:14]:
/usr/lib/eclipse/swt-gtk-3.3.jar
Why not in /usr/share/java/swt.jar?
It's in %{_libdir} 'cause it's got arch-specific stuff in it. Care to submit a patch for eclipse.spec to add the version-less symlink?
I think that a version-less symlink should be in /usr/lib/eclipse, but additionally, the version-less symlink should also be in a directory allowing to do a yum install for the file and get it right, therefore in a directory like: /usr/lib/java /usr/lib/java-ext that are both owned by jpackage-utils. And empty in my setting. Would one of those directories be suitable? If no I propose to add another one, with name along /usr/lib/java-jar or /usr/lib/java-lib
As a side note gcj depends on jpackage-utils but not ecj nor icedtea, maybe they should? Or is it up to the package that installs something in %{_libdir}/java* to depend on jpackage-utils?
On fc7, there seems to be a need to do
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/eclipse/
What VM is this with?
With gcj sure and ecj, if I recall well. Should I test other VM? (Is icedtea on F7?)
On F8 I tested gcj and icedtea, and both worked fine.
-- Pat
Le Mar 9 octobre 2007 09:19, Patrice Dumas a écrit :
On Mon, Oct 08, 2007 at 05:27:43PM -0400, Andrew Overholt wrote:
Hi,
- Patrice Dumas pertusus@free.fr [2007-10-08 17:14]:
/usr/lib/eclipse/swt-gtk-3.3.jar
Why not in /usr/share/java/swt.jar?
It's in %{_libdir} 'cause it's got arch-specific stuff in it. Care to submit a patch for eclipse.spec to add the version-less symlink?
I think that a version-less symlink should be in /usr/lib/eclipse, but additionally, the version-less symlink should also be in a directory allowing to do a yum install for the file and get it right, therefore in a directory like: /usr/lib/java /usr/lib/java-ext that are both owned by jpackage-utils. And empty in my setting. Would one of those directories be suitable?
If you read the jpackage-utils doc you'll see /usr/lib/java was always reserved for arch-dependant jars.
Regards,
On Mon, Oct 08, 2007 at 05:27:43PM -0400, Andrew Overholt wrote:
Hi,
- Patrice Dumas pertusus@free.fr [2007-10-08 17:14]:
/usr/lib/eclipse/swt-gtk-3.3.jar
Why not in /usr/share/java/swt.jar?
It's in %{_libdir} 'cause it's got arch-specific stuff in it. Care to submit a patch for eclipse.spec to add the version-less symlink?
I couldn't test completly because after hours of build, it stops with an error that seems to be unrelated: Binary file /var/tmp/eclipse-3.3.0-26.fc8-root-dumas/usr/lib/eclipse/configuration/org.eclipse.osgi/.bundledata.1 matches Binary file /var/tmp/eclipse-3.3.0-26.fc8-root-dumas/usr/lib/eclipse/configuration/org.eclipse.osgi/.lazy.1 matches Found '/var/tmp/eclipse-3.3.0-26.fc8-root-dumas' in installed files; aborting
I attach what I came to. Any idea about which version of fedora and RHEL/EPEL will get this or similar patch?
-- Pat
Hi,
* Patrice Dumas pertusus@free.fr [2007-10-10 18:12]:
I couldn't test completly because after hours of build, it stops with an error that seems to be unrelated: Binary file /var/tmp/eclipse-3.3.0-26.fc8-root-dumas/usr/lib/eclipse/configuration/org.eclipse.osgi/.bundledata.1 matches Binary file /var/tmp/eclipse-3.3.0-26.fc8-root-dumas/usr/lib/eclipse/configuration/org.eclipse.osgi/.lazy.1 matches Found '/var/tmp/eclipse-3.3.0-26.fc8-root-dumas' in installed files; aborting
Weird.
I attach what I came to. Any idea about which version of fedora and RHEL/EPEL will get this or similar patch?
Thanks for the patch - it looks good. We can squeeze it into Fedora 8 if it's important to you and/or others. I'll do a build for F8 with it now.
Andrew
On Thu, Oct 11, 2007 at 10:24:32AM -0400, Andrew Overholt wrote:
I attach what I came to. Any idea about which version of fedora and RHEL/EPEL will get this or similar patch?
Thanks for the patch - it looks good. We can squeeze it into Fedora 8 if it's important to you and/or others. I'll do a build for F8 with it now.
I want to submit a package that relies on it and I'd like to avoid something complicated with hardcoded versions. It won't be in fedora, but in rpmfusion, though, since it depends on mencode which is not in fedora. So the fedora version that have it determines the first fedora version for my package, so F8 (and RHEL6) seems right.
-- Pat
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Andrew Overholt wrote:
Hi,
- Patrice Dumas pertusus@free.fr [2007-10-10 18:12]:
I couldn't test completly because after hours of build, it stops with an error that seems to be unrelated: Binary file /var/tmp/eclipse-3.3.0-26.fc8-root-dumas/usr/lib/eclipse/configuration/org.eclipse.osgi/.bundledata.1 matches Binary file /var/tmp/eclipse-3.3.0-26.fc8-root-dumas/usr/lib/eclipse/configuration/org.eclipse.osgi/.lazy.1 matches Found '/var/tmp/eclipse-3.3.0-26.fc8-root-dumas' in installed files; aborting
Weird.
I attach what I came to. Any idea about which version of fedora and RHEL/EPEL will get this or similar patch?
Thanks for the patch - it looks good. We can squeeze it into Fedora 8 if it's important to you and/or others. I'll do a build for F8 with it now.
I think you mean to use %{_jndirdir} and not %{_libdir}/java in this patch. Also, I think you should provide versioned swt and swt-gtk symlinks.
- -- Sincerely,
David Walluck david@zarb.org
On Mon, Oct 15, 2007 at 07:05:37AM -0400, David Walluck wrote:
I think you mean to use %{_jndirdir} and not %{_libdir}/java in this
This macro doesn't seems to be defined:
rpm --eval %{_jndirdir} %{_jndirdir}
patch. Also, I think you should provide versioned swt and swt-gtk symlinks.
What would be the use of such symlinks? Shouldn't everything that use swt add %{_libdir}/java/swt.jar to the classpath?
-- Pat
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Patrice Dumas wrote:
On Mon, Oct 15, 2007 at 07:05:37AM -0400, David Walluck wrote:
I think you mean to use %{_jndirdir} and not %{_libdir}/java in this
This macro doesn't seems to be defined:
rpm --eval %{_jndirdir} %{_jndirdir}
I meant %{_jnidir}. This should be used instead of %{_libdir}/java. Also, jpackage-utils should be required by the eclipse package regardless.
What would be the use of such symlinks? Shouldn't everything that use swt add %{_libdir}/java/swt.jar to the classpath?
Because some of the files/links are versioned and some aren't. So the convention is to version everything.
Generally, yes, one would do $(build-classpath swt), but that doesn't affect the other standard of naming conventions.
- -- Sincerely,
David Walluck david@zarb.org
* David Walluck david@zarb.org [2007-10-15 07:29]:
Also, jpackage-utils should be required by the eclipse package regardless.
Why? Some of its dependencies Require it so it'll be brought in. Is there an advantage to requiring it explicitly?
Andrew
On Mon, Oct 15, 2007 at 08:11:40AM -0400, Andrew Overholt wrote:
- David Walluck david@zarb.org [2007-10-15 07:29]:
Also, jpackage-utils should be required by the eclipse package regardless.
Why? Some of its dependencies Require it so it'll be brought in. Is there an advantage to requiring it explicitly?
The dependency chain is not obvious to me, it seems to be through java-1.5.0-gcj. If I am not wrong, it seems to me that a direct Requires would be better.
-- Pat
* Patrice Dumas pertusus@free.fr [2007-10-15 09:03]:
On Mon, Oct 15, 2007 at 08:11:40AM -0400, Andrew Overholt wrote:
- David Walluck david@zarb.org [2007-10-15 07:29]:
Also, jpackage-utils should be required by the eclipse package regardless.
Why? Some of its dependencies Require it so it'll be brought in. Is there an advantage to requiring it explicitly?
The dependency chain is not obvious to me, it seems to be through java-1.5.0-gcj. If I am not wrong, it seems to me that a direct Requires would be better.
I really don't care, so if people want to see that explicit Requires, feel free to add it to the package in CVS or send me a patch.
Andrew
On Thu, Oct 11, 2007 at 10:24:32AM -0400, Andrew Overholt wrote:
Hi,
Thanks for the patch - it looks good. We can squeeze it into Fedora 8 if it's important to you and/or others. I'll do a build for F8 with it now.
You removed the part: # %{_libdir}/java directory owned by jpackage-utils Requires: jpackage-utils
It is not a problem, but then %{_libdir}/java should be owned by the package otherwise it may end up being unowned.
-- Pat
java-devel@lists.fedoraproject.org