Trouble with JAR resources
Marco Trudel
marco@mtsystems.ch
Wed Jan 7 17:45:00 GMT 2009
Andrew Haley wrote:
> Thomas Christensen wrote:
>
>> I have compiled SWT/JFACE jars to object files without any issues, but I
>> have a little trouble linking them with my app.
>>
>> It seems I have compiled some resources from the jars into the objects,
>> and they conflict, since they are present in multiple jars.
>>
>> The jars in question are:
>>
>> org.eclipse.core.commands_3.4.0.I20080509-2000.jar
>> org.eclipse.equinox.common_3.4.0.v20080421-2006.jar
>> org.eclipse.jface_3.4.1.M20080827-2000.jar
>> org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar
>> org.eclipse.swt.gtk.linux.x86_3.4.1.v3449c.jar
>>
>> from Eclipse Classic 3.4.1.
>>
>> I issue the command:
>>
>> $ gcj --main=Foo org.eclipse.core.commands_3.4.0.I20080509-2000.o org.eclipse.equinox.common_3.4.0.v20080421-2006.o org.eclipse.jface_3.4.1.M20080827-2000.o org.eclipse.osgi_3.4.2.R34x_v20080826-1230.o org.eclipse.swt.gtk.linux.x86_3.4.1.v3449c.o Foo.o -o foo
>>
>> and get multiple link errors like these:
>>
>> org.eclipse.equinox.common_3.4.0.v20080421-2006.o:(.rodata+0x0): multiple definition of `java resource META__U2d_INF/ECLIPSE.SF'
>> /usr/bin/ld: Warning: size of symbol `java resource META__U2d_INF/ECLIPSE.SF' changed from 9564 in org.eclipse.core.commands_3.4.0.I20080509-2000.o to 6528 in org.eclipse.equinox.common_3.4.0.v20080421-2006.o
>>
>> Can I avoid adding these resources when compiling the jars? Or maybe
>> strip them from the object files?
>
> Not easily. I'd either strip them from the jars before compiling or
> compile with -findirect-dispatch.
An easy temporary solution might also be -Wl,--allow-multiple-definition.
Marco
> Andrew.
More information about the Java
mailing list