Yes, Eclipse does crash sometimes, but we still love it, for some reason :)
If your crash report says something like:
# C [libwebkitgtk-1.0.so.0+0x426915] webkitWebViewRegisterForIconNotification+0xb5
then today is your lucky day. I have a solution for you.
First of all, about the problem
Looks like Eclipse does not play nice with libwebkitgtk-1.0, it wants libwebkitgtk-3. At least on Ubuntu 64. Most probably, you do have both of them installed, but for some reason Eclipse picks version 1 instead of version 3.
Solution
Well, first solution is quite obvious - remove bloody libwebkitgtk-1.0. Easy shortcut to happy place without any crashes. However, there is a small issue with that approach. If you do have package installed, then probably there is a reason and you would have to remove some other packages that depend on libwebkitgtk-1.0. In my case, Gimp was the cornerstone. It does not work with libwebkitgtk-3.Too bad.
Second solution is a bit more sophisticated. It is the reason why I like Ubuntu and at the same time reason for many jokes and criticisms from other OS users. If something does not work the way we want - let's recompile it :D
If you take a look at WebKit source, you will notice that webkitWebViewRegisterForIconNotification is called only #if ENABLE(ICONDATABASE). What?! I'm getting crashes because of some icons?! I hardly care if I have those icons in my main browser, not speaking about browser integrated in Eclipse or Gimp. Let's kill icons!
I will not describe in details how to recompile the package, there are lot's of materials on that topic. When you get WebKit source, search Debian configuration files for keys that disable icon database. Unfortunately, there is trick. Looks like disabling of icon database was not tested by developers. There are some places in code that do not have correct compile instructions and will complain about missing methods. I suppose if you got to that point, then surrounding some lines of code with compiler instructions is not a problem for you :)
I will not describe in details how to recompile the package, there are lot's of materials on that topic. When you get WebKit source, search Debian configuration files for keys that disable icon database. Unfortunately, there is trick. Looks like disabling of icon database was not tested by developers. There are some places in code that do not have correct compile instructions and will complain about missing methods. I suppose if you got to that point, then surrounding some lines of code with compiler instructions is not a problem for you :)
If it sounds too scary for you, here is my version of package.
Now you just have to install it:
dpkg --install libwebkitgtk-1.0-0_1.10.0-0ubuntu1.1_amd64.deb
dpkg --install libwebkitgtk-1.0-0_1.10.0-0ubuntu1.1_amd64.deb
This is a good article & good site.Thank you for sharing this article. It is help us following categorize:
ReplyDeleteit consulting, retail, manufacturing, CRM, digital supply chain management, Delivering high-quality service for your business applications,
Solutions for all Industries,
Getting your applications talking is the key to better business processes,
Rapid web services solutions for real business problems,
Understanding Your Data is the Key to Good Decision-Making,
Web-based Corporate Document Management System,
Outsourcing Solution,
Financial and Operations Business Intelligence Solution,
prologic-corp
But isn't there a way of telling Eclipse to pick libwebkitgtk-3 instead?
ReplyDeleteHi, you can check this bug report https://bugs.eclipse.org/bugs/show_bug.cgi?id=392967. By the way, it says that bug is fixed already.
Deletewow this work for me, thanks very much guy :)
ReplyDeleteSince Eclipse Kepler (4.3), you can tell SWT to load libwebkitgtk-3.0 by defining the SWT_GTK3 environment variable
ReplyDeleteexport SWT_GTK3=1
This will eliminate most causes of crash that were experienced with 'libwebkitgtk-1.0' versions.
In 4.3 SWT_GTK3 can take any value (only test is on existence). In 4.4 it is possible that the only meaningful value might be "1".
Great news! Will test it and update blogpost.
DeleteGreat post . It takes me almost half an hour to read the whole post. Definitely this one of the informative and useful post to me. Thanks for the share and plz visit my site Programming 21st and century provide offshore outsourcing service, freelance service, personal assistant,web development, customer service, marketing services.
ReplyDeleteThanks..
ReplyDeleteInstall eclipse in ubuntu 14.04
Acetech IT consulting Company in Delhi offer the technical knowledge and can help your business get the most out of your technology. Why are Acetech IT consulting services truly the best? Visit Us to find out more.
ReplyDeleteAcetech IT consulting Company in Delhi offer the technical knowledge and can help your business get the most out of your technology. Why are Acetech IT consulting services truly the best? Visit Us to find out more.
ReplyDeleteGreat post . Will test it and update blogpost.
ReplyDeleteSEO