CFT: Eclipse Galileo 3.5

Christopher T. Stone chris at stoneyforest.net
Sat Nov 7 06:00:29 UTC 2009


Huang wen hui wrote:
> Stephane E. Potvin 写道:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Huang wen hui wrote:
>>  
>>> Stephane E. Potvin 写道:
>>> Huang wen hui wrote:
>>>  
>>>    
>>>>>> Stephane E. Potvin wrote:
>>>>>>             
>>>>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>>>>> Hash: SHA1
>>>>>>>
>>>>>>> Hi everyone,
>>>>>>>
>>>>>>> I'm at last ready to have some public testing of the
>>>>>>> 3.5.0-I20090611-1540 port of Eclipse (aka Galileo). The x86 
>>>>>>> platform
>>>>>>> has been
>>>>>>> the least tested (actually, not at all this time  ;)  so I'd
>>>>>>> appreciate to have feedback for this one. I've also only done 
>>>>>>> testing
>>>>>>> with the native jdk1.6.0 from ports (java/jdk16) so please indicate
>>>>>>> which jdk you're using if you send me a go/no-go.
>>>>>>>
>>>>>>> Highlights:
>>>>>>> - - First FreeBSD Galileo release
>>>>>>> - - The build is now using eclipse-build from the "Linux Tools" 
>>>>>>> project
>>>>>>> - - Patches are now much more simple and have been split into two
>>>>>>> parts for easier push upstream (one against eclipse-build and the
>>>>>>> other for eclipse itself)
>>>>>>> - - The only Gecko provider supported is now libxul
>>>>>>> - - The gnome dependencies are now static and no longer 
>>>>>>> configurable
>>>>>>> via options (there might be one or two that are no longer
>>>>>>> necessary but I haven't gotten around yet to check which one)
>>>>>>> - - Eclipse installs in ${PREFIX}/lib/eclipse instead of
>>>>>>> ${PREFIX}/eclipse to reduce pollution in ${PREFIX}
>>>>>>> - - New dropins directory is in ${PREFIX}/share/eclipse/dropins. 
>>>>>>> This
>>>>>>> directory can be used for features/plugins that are not
>>>>>>> installed via the p2 provisioning engine. All the ports that are 
>>>>>>> not
>>>>>>> changed to use p2 will have to use this directory in the future
>>>>>>> (this will be done in a separate patch).
>>>>>>> - - The setup-user step is no longer necessary. p2 has been fixed
>>>>>>> upstream and the user installed plugins are discovered correctly
>>>>>>> even after a re-installation of eclipse.
>>>>>>>
>>>>>>> The patch can be found at the following address:
>>>>>>>
>>>>>>>     http://people.freebsd.org/~sepotvin/eclipse35.diff
>>>>>>>
>>>>>>> Have fun!
>>>>>>>                     
>>>>>> Hi,
>>>>>> I build Galileo under FreeBSD 8.0RC2, It is ok, but run eclipse, 
>>>>>> I got
>>>>>> this error:
>>>>>>
>>>>>> !SESSION 2009-11-05 13:41:17.764
>>>>>> -----------------------------------------------
>>>>>> eclipse.buildId=I20090611-1540
>>>>>> java.version=1.6.0_03-p4
>>>>>> java.vendor=Sun Microsystems Inc.
>>>>>> BootLoader constants: OS=freebsd, ARCH=x86_64, WS=gtk, NL=zh_CN
>>>>>> Command-line arguments:  -os freebsd -ws gtk -arch x86_64
>>>>>>
>>>>>> !ENTRY org.eclipse.osgi 4 0 2009-11-05 13:41:18.651
>>>>>> !MESSAGE Application error
>>>>>> !STACK 1
>>>>>> java.lang.UnsatisfiedLinkError: no swt-gtk-3550 or swt-gtk in
>>>>>> swt.library.path, java.library.path or the jar file
>>>>>>    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:254)
>>>>>>    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:159)
>>>>>>    at org.eclipse.swt.internal.C.<clinit>(C.java:21)
>>>>>>    at 
>>>>>> org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
>>>>>>    at 
>>>>>> org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
>>>>>>    at org.eclipse.swt.widgets.Display.<clinit>(Display.java:131)
>>>>>>    at
>>>>>> org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:516)
>>>>>>    at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161)
>>>>>>    at
>>>>>> org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:143) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:88) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>>    at
>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at
>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
>>>>>>
>>>>>>
>>>>>>
>>>>>>    at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>    at 
>>>>>> org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:563)
>>>>>>    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:518)
>>>>>>    at org.eclipse.equinox.launcher.Main.run(Main.java:1315)
>>>>>>    at org.eclipse.equinox.launcher.Main.main(Main.java:1291)
>>>>>>
>>>>>> I try to find libswt-gtk-3550*.so under work directory, could not 
>>>>>> found
>>>>>> right one.
>>>>>>
>>>>>> any ideas?
>>>>>>
>>>>>>               
>>> Hi,
>>>
>>> Could you please send me offline the build output? (Do not send it to
>>> the list, it will be very large).
>>>
>>> Regards,
>>>
>>> Steph
>>>     
>>
>> Hi,
>>
>> - From the transcript you've sent me, it looks like the 
>> eclipse35.diff didn't apply correctly.
>>
>>      [exec] missing header for unified diff at line 10 of patch
>>      [exec] can't find file to patch at input line 10
>>      [exec] Perhaps you used the wrong -p or --strip option?
>>      [exec] The text leading up to this was:
>>      [exec] --------------------------
>>      [exec] |### Eclipse Workspace Patch 1.0
>>      [exec] |#P org.eclipse.swt
>>      [exec] |Index: Eclipse SWT PI/gtk/library/build.sh
>>      [exec] 
>> |===================================================================
>>      [exec] |RCS file: /cvsroot/eclipse/org.eclipse.swt/Eclipse SWT 
>> PI/gtk/library/build.sh,v
>>      [exec] |retrieving revision 1.54
>>      [exec] |diff -u -r1.54 build.sh
>>      [exec] |--- Eclipse SWT PI/gtk/library/build.sh    29 May 2009 
>> 21:30:14 -0000    1.54
>>      [exec] |+++ Eclipse SWT PI/gtk/library/build.sh    1 Jun 2009 
>> 18:44:43 -0000
>>      [exec] --------------------------
>>      [exec] File to patch:
>>      [exec] Skip this patch? [y]
>>      [exec] Skipping patch.
>>      [exec] 1 out of 1 hunk ignored
>>      [exec] Result: 1
>>
>> Make sure that you start with a clean java/eclipse directory (erase 
>> it and check it out again), then use gpatch from ports to apply
>> the eclipse diff, patch won't work. While you're at it, you should 
>> use the new eclipse35_1.diff patch which is available at the same
>> location than the original one. It will fix a plist issue and enable 
>> the build to complete on the x86 platform.
>>   
> I upgrade devel/patch, rebuild eclipse again, this time patch is 
> clean. I still got this problem:
>
> !ENTRY org.eclipse.osgi 4 0 2009-11-07 09:21:25.003
> !MESSAGE Application error
> !STACK 1
> java.lang.UnsatisfiedLinkError: no swt-gtk-3550 or swt-gtk in 
> swt.library.path, java.library.path or the jar file
>    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:254)
>    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:159)
>    at org.eclipse.swt.internal.C.<clinit>(C.java:21)
>    at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
>    at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
>
> in build log, found:
>
>
>     [exec] cc -L/usr/local/jdk1.6.0/jre/lib/amd64 -ljawt -shared -s -o 
> libswt-awt-gtk-3550.so swt_awt.o^M
>     [exec] c++ -O -DSWT_VERSION=3550  -DMOZILLA_STRICT_API=1 -fno-rtti 
> -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. 
> -I/usr/local/jdk1.6.0/include -I/usr/local/jdk
> 1.6.0/include/freebsd  -DNO__1XPCOMGlueShutdown 
> -DNO__1XPCOMGlueStartup -DNO__1XPCOMGlueLoadXULFunctions 
> -DNO_memmove__ILorg_eclipse_swt_internal_mozilla_nsDynamicFunctionL
> oad_2I 
> -DNO_memmove__JLorg_eclipse_swt_internal_mozilla_nsDynamicFunctionLoad_2J 
> -DNO_nsDynamicFunctionLoad_1sizeof -DNO__1Call__IIIIII 
> -DNO__1Call__JJJJJI -DNO_nsDynamicFu
> nctionLoad -I/usr/local/include/mozilla 
> -I/usr/local/include/mozilla/xpcom -I/usr/local/include/mozilla/string 
> -I/usr/local/include/nspr   -c xpcom.cpp^M
>     [exec] c++ -O -DSWT_VERSION=3550  -DMOZILLA_STRICT_API=1 -fno-rtti 
> -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. 
> -I/usr/local/jdk1.6.0/include -I/usr/local/jdk
> 1.6.0/include/freebsd  -DNO__1XPCOMGlueShutdown 
> -DNO__1XPCOMGlueStartup -DNO__1XPCOMGlueLoadXULFunctions 
> -DNO_memmove__ILorg_eclipse_swt_internal_mozilla_nsDynamicFunctionL
> oad_2I 
> -DNO_memmove__JLorg_eclipse_swt_internal_mozilla_nsDynamicFunctionLoad_2J 
> -DNO_nsDynamicFunctionLoad_1sizeof -DNO__1Call__IIIIII 
> -DNO__1Call__JJJJJI -DNO_nsDynamicFu
> nctionLoad -I/usr/local/include/mozilla 
> -I/usr/local/include/mozilla/xpcom -I/usr/local/include/mozilla/string 
> -I/usr/local/include/nspr   -c xpcom_custom.cpp^M
>     [exec] c++ -O -DSWT_VERSION=3550  -DMOZILLA_STRICT_API=1 -fno-rtti 
> -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. 
> -I/usr/local/jdk1.6.0/include -I/usr/local/jdk
> 1.6.0/include/freebsd  -DNO__1XPCOMGlueShutdown 
> -DNO__1XPCOMGlueStartup -DNO__1XPCOMGlueLoadXULFunctions 
> -DNO_memmove__ILorg_eclipse_swt_internal_mozilla_nsDynamicFunctionL
> oad_2I 
> -DNO_memmove__JLorg_eclipse_swt_internal_mozilla_nsDynamicFunctionLoad_2J 
> -DNO_nsDynamicFunctionLoad_1sizeof -DNO__1Call__IIIIII 
> -DNO__1Call__JJJJJI -DNO_nsDynamicFu
> nctionLoad -I/usr/local/include/mozilla 
> -I/usr/local/include/mozilla/xpcom -I/usr/local/include/mozilla/string 
> -I/usr/local/include/nspr   -c xpcom_structs.cpp^M
>     [exec] c++ -O -DSWT_VERSION=3550  -DMOZILLA_STRICT_API=1 -fno-rtti 
> -fno-exceptions -Wall -Wno-non-virtual-dtor -fPIC -I. 
> -I/usr/local/jdk1.6.0/include -I/usr/local/jdk
> 1.6.0/include/freebsd  -DNO__1XPCOMGlueShutdown 
> -DNO__1XPCOMGlueStartup -DNO__1XPCOMGlueLoadXULFunctions 
> -DNO_memmove__ILorg_eclipse_swt_internal_mozilla_nsDynamicFunctionL
> oad_2I 
> -DNO_memmove__JLorg_eclipse_swt_internal_mozilla_nsDynamicFunctionLoad_2J 
> -DNO_nsDynamicFunctionLoad_1sizeof -DNO__1Call__IIIIII 
> -DNO__1Call__JJJJJI -DNO_nsDynamicFu
> nctionLoad -I/usr/local/include/mozilla 
> -I/usr/local/include/mozilla/xpcom -I/usr/local/include/mozilla/string 
> -I/usr/local/include/nspr   -c xpcom_stats.cpp^M
>     [exec] c++ -o libswt-mozilla-gtk-3550.so swt.o xpcom.o 
> xpcom_custom.o xpcom_structs.o xpcom_stats.o -shared 
> -Wl,--version-script=mozilla_exports -Bsymbolic -s -Wl,-rpa
> th,/usr/local/lib/mozilla -pthread -L/usr/local/lib/mozilla 
> -L/usr/local/lib -lxpcom -lplds4 -lplc4 -lnspr4  ^M
>     [exec] /usr/bin/ld: cannot find -lxpcom^M
>     [exec] gmake: *** [libswt-mozilla-gtk-3550.so] 
> \xe9\x94\x99\xe8\xaf\xaf 1^M
>     [exec] Result: 2^M
>     [exec] Building FreeBSD launcher. Defaults: -os freebsd -arch 
> x86_64 -ws gtk^M
>     [exec] rm -f eclipse eclipse_1206.so eclipseMain.o eclipseConfig.o 
> eclipseCommon.o eclipseGtkCommon.o eclipseGtkInit.o eclipse.o 
> eclipseGtk.o eclipseUtil.o eclipseJNI.
> o eclipseMozilla.o eclipseShm.o eclipseNix.o^M
>
>
>
>
> I manually cp libswt*.so to /usr/local/lib, eclipse can start and open 
> dialog crash problem is gone.
>
> --hwh
>
> _______________________________________________
> freebsd-eclipse at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-eclipse
> To unsubscribe, send any mail to 
> "freebsd-eclipse-unsubscribe at freebsd.org"
>
Same here. I had the exact same problem. Copied the following files from 
the build directory and it works great:
libswt-atk-gtk-3550.so -> /usr/local/lib/libswt-atk-gtk-3550.so
libswt-mozilla-gtk-3550.so -> /usr/local/lib/libswt-mozilla-gtk-3550.so
libswt-gtk-3550.so -> /usr/local/lib/libswt-gtk-3550.so
libswt-gnome-gtk-3550.so -> /usr/local/lib/libswt-gnome-gtk-3550.so
libswt-glx-gtk-3550.so -> /usr/local/lib/libswt-glx-gtk-3550.so
libswt-cairo-gtk-3550.so -> /usr/local/lib/libswt-cairo-gtk-3550.so
libswt-awt-gtk-3550.so -> /usr/local/lib/libswt-awt-gtk-3550.so
libswt-pi-gtk-3550.so -> /usr/local/lib/libswt-pi-gtk-3550.so

Also, the eclipse-cdt-3.1.2 works if you fudge localbase to the new 
location.

~Chris Stone


More information about the freebsd-eclipse mailing list