This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: SWT 3 and gcj
- From: Rutger Ovidius <ovid at mailandnews dot com>
- To: java at gcc dot gnu dot org
- Date: Fri, 17 Oct 2003 18:57:19 -0400
- Subject: Re: SWT 3 and gcj
Hi,
Yes, I think I can get SWT by itself to compile now. But that which was once
compilable with gcj 3.3.1 on windows, is no longer compilable with 3.4.
SWT 3 compiled with gcj 3.3.1 doesn't seem to run at all for me (the test case
I posted last time runs, but nothing happens..), and many of the utility .jar
files from Eclipse 3 Milestone 4 will not compile with gcc 3.3.1. gcj 3.4 can
be made to compile SWT 3 and works with that testcase. However, boot.jar,
runtime.jar, and other jars from eclipse which could be compiled with 3.3.1
from Eclipse 2.11, can't be compiled with 3.4:
Eclipse3 M4:
* gcc 3.4 for windows from thisiscool page
* plugins/org.eclipse.core.boot_3.0.0/boot.jar
* plugins/org.eclipse.core.runtime_3.0.0/runtime.jar
gcj-3.4 -w -c -o boot.o boot.jar
C:\DOCUME~1\v\LOCALS~1\Temp/cc0Maaaa.s: Assembler messages:
C:\DOCUME~1\v\LOCALS~1\Temp/cc0Maaaa.s:94227: Error: symbol
`__GLOBAL__I__ZN3org7eclipse4core8internal4boot16URLConte
ntFilter6class$E' is already defined
gcj-3.4 --CLASSPATH=boot.jar;xercesImpl.jar -w -c -o runtime.o runtime.jar
org/eclipse/core/internal/registry/ExtensionRegistry.java: In class
`org.eclipse.core.internal.registry.ExtensionRegistr
y':
org/eclipse/core/internal/registry/ExtensionRegistry.java: In method
`org.eclipse.core.internal.registry.ExtensionRegist
ry.add(org.eclipse.core.internal.registry.IHost)':
org/eclipse/core/internal/registry/ExtensionRegistry.java:65: error:
verification error at PC=131
org/eclipse/core/internal/registry/ExtensionRegistry.java:65: error: might
transfer control into subroutine
org/eclipse/core/internal/registry/ExtensionRegistry.java: In method
`org.eclipse.core.internal.registry.ExtensionRegist
ry.remove(java.lang.String)':
org/eclipse/core/internal/registry/ExtensionRegistry.java:295: error:
verification error at PC=124
org/eclipse/core/internal/registry/ExtensionRegistry.java:295: error: might
transfer control into subroutine
org/eclipse/core/internal/runtime/InternalPlatform.java: In class
`org.eclipse.core.internal.runtime.InternalPlatform':
org/eclipse/core/internal/runtime/InternalPlatform.java: In method
`org.eclipse.core.internal.runtime.InternalPlatform.a
pplyPluginDefaultOverrides(java.net.URL,java.lang.String,org.eclipse.core.runt
ime.Preferences,java.util.Properties)':
org/eclipse/core/internal/runtime/InternalPlatform.java:1289: error:
verification error at PC=171
org/eclipse/core/internal/runtime/InternalPlatform.java:1289: error: might
transfer control into subroutine
But, I can't mix and match object files output from different gcj versions, so
I'm stuck yet again.
You might not have noticed that there exist other errors for which you need to
compile from SWT 3 source (Not only ImageLoaders). libswt.a for SWT3 will
work, but you might end up missing some features. Compiling with -w will turn
off warnings so you can better see the errors:
-- From SWT 3 --
org/eclipse/swt/dnd/RTFTransfer.java: In class
`org.eclipse.swt.dnd.RTFTransfer':
org/eclipse/swt/dnd/RTFTransfer.java: In method
`org.eclipse.swt.dnd.RTFTransfer.nativeToJava(org.eclipse.swt.dnd.Transf
erData)':
org/eclipse/swt/dnd/RTFTransfer.java:97: error: verification error at PC=198
org/eclipse/swt/dnd/RTFTransfer.java:97: error: might transfer control into
subroutine
org/eclipse/swt/dnd/TextTransfer.java: In class
`org.eclipse.swt.dnd.TextTransfer':
org/eclipse/swt/dnd/TextTransfer.java: In method
`org.eclipse.swt.dnd.TextTransfer.nativeToJava(org.eclipse.swt.dnd.Tran
sferData)':
org/eclipse/swt/dnd/TextTransfer.java:119: error: verification error at PC=348
org/eclipse/swt/dnd/TextTransfer.java:119: error: might transfer control into
subroutine
org/eclipse/swt/graphics/ImageLoader.java: In class
`org.eclipse.swt.graphics.ImageLoader':
org/eclipse/swt/graphics/ImageLoader.java: In method
`org.eclipse.swt.graphics.ImageLoader.load(java.lang.String)':
org/eclipse/swt/graphics/ImageLoader.java:146: error: verification error at
PC=38
org/eclipse/swt/graphics/ImageLoader.java:146: error: might transfer control
into subroutine
org/eclipse/swt/ole/win32/OleClientSite.java: In class
`org.eclipse.swt.ole.win32.OleClientSite':
org/eclipse/swt/ole/win32/OleClientSite.java: In method
`org.eclipse.swt.ole.win32.OleClientSite.saveToStorageFile(java.
io.File)':
org/eclipse/swt/ole/win32/OleClientSite.java:1160: error: verification error
at PC=182
org/eclipse/swt/ole/win32/OleClientSite.java:1160: error: might transfer
control into subroutine
----
From: "Simon Rutishauser" <simon dot rutishauser at gmx dot ch>
it works for me. Perhaps you have to put swt-awt-win32-3024.dll into the
dir, too? I really don't know what it contains...