Bug 159404

Summary: monodevelop cannot find libgtkembedmoz.so
Product: [openSUSE] openSUSE 10.2 Reporter: Marcus Camen <m.camen>
Component: MonoAssignee: E-mail List <bnc-team-mono>
Status: VERIFIED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: andreas.hanke
Version: Alpha 4 plus   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: stdout / stderr of monodevelop
stdout / stderr of 2nd run
stdout / stderr of monodevelop

Description Marcus Camen 2006-03-19 18:15:29 UTC
Running monodevelop shows

which: no mozilla in (/home/camen/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/jvm/jre/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin)

initializer for Gecko.WebControl ---> System.DllNotFoundException: libgtkembedmoz.so
in (wrapper managed-to-native) Gecko.WebControl:gtk_moz_embed_get_type ()
in <0x00014> Gecko.WebControl:get_GType ()
in <0x00026> GtkSharp.GeckoSharp.ObjectManager:Initialize ()
in <0x00007> Gecko.WebControl:.cctor ()--- End of inner exception stack trace ---


camen@suse101:~> rpm -qa | grep gecko
gecko-sharp2-0.11-13
Comment 1 Marcus Camen 2006-03-19 18:17:05 UTC
Created attachment 73848 [details]
stdout / stderr of monodevelop
Comment 2 Marcus Camen 2006-03-19 18:24:15 UTC
Created attachment 73855 [details]
stdout / stderr of 2nd run

Hmmm...
Running monodevelop a second time doesn't show the problem. Maybe some kind of cache (assembly cache ?) is not initialized before the first run??
Comment 3 Wade Berrier 2006-03-28 16:40:11 UTC
Not sure what to think of this.  Lluis, any ideas?
Comment 4 Lluis Sanchez 2006-03-28 17:08:55 UTC
The error is about not finding the Gecko libraries (libgtkembedmoz.so), not the gecko-sharp libraries. Are those installed? are those in LD_LIBRARY_PATH? is MOZILLA_FIVE_HOME properly set?
Comment 5 Marcus Camen 2006-04-01 12:35:35 UTC
MOZILLA_FIVE_HOME is not set.

suse101:/ # rpm -q -f ./usr/lib/xulrunner-1.8.0.1/libgtkembedmoz.so
mozilla-xulrunner-1.8.0.1-24
Comment 6 Marcus Camen 2006-04-01 12:36:31 UTC
Created attachment 76032 [details]
stdout / stderr of monodevelop
Comment 7 Lluis Sanchez 2006-04-01 16:39:19 UTC
Try setting MOZILLA_FIVE_HOME to your mozilla libs directory.
Comment 8 Marcus Camen 2006-04-01 18:16:43 UTC
Yep, with export MOZILLA_FIVE_HOME=/usr/lib/xulrunner-1.8.0.1 monodevelop works fine.

Seems mozilla-xulrunner should provide /etc/profile.d/mozilla.*
Comment 9 Miguel de Icaza 2006-04-17 02:43:17 UTC
Do you have mozilla installed?

The MonoDevelop script should be able to auto-detect where Mozilla lives if the binary for Mozilla is installed in the system. 
Comment 10 Wolfgang Rosenauer 2006-04-17 09:56:38 UTC
There is no mozilla anymore on 10.1.
The package which provides libgtkembedmoz.so is mozilla-xulrunner.

It's %{_libdir}/xulrunner-1.8.0.1 in 10.1
Comment 11 Robert O'Callahan 2006-04-17 21:53:15 UTC
I'm not sure why setting MOZILLA_FIVE_HOME fixes this. I don't think xulrunner itself needs it.

How does Gecko# find the directory where libbgtkmozembed.so lives? Do we need to add %{_libdir}/xulrunner-1.8.0.1 to some library path? Or do we need to change the configuration of Gecko#?
Comment 12 Lluis Sanchez 2006-04-19 09:54:40 UTC
Setting MOZILLA_FIVE_HOME fixes the problem becuase the monodevelop startup script adds it to LD_LIBRARY_PATH, so Mono is then able to find libgtkmozembed.so.

That startup script does several checks in case MOZILLA_FIVE_HOME is not set. It tries to guess the location of libgtkmozembed.so from the location of the firefox or mozilla binary. I guess those checks are useless now that the library is installed by the xulrunner package.
Comment 13 Bodo Bauer 2006-04-28 09:49:10 UTC
Do we still need this bugzilla? Please reevaluate and close the bug if appropriate.
Comment 14 Marcus Camen 2006-04-28 09:59:00 UTC
The bug still occurs in RC2 and since then the SVN factory-commit mails did not show any related changes.
Comment 15 Wade Berrier 2006-08-25 23:17:20 UTC
> Seems mozilla-xulrunner should provide /etc/profile.d/mozilla.*

I vote for this change so that MOZILLA_FIVE_HOME gets set.

Otherwise, a suse specific patch will be needed against MonoDevelop's start up script, or we'll need to use a different method of trying to determine MOZILLA_FIVE_HOME.
Comment 16 Marcus Camen 2006-09-20 15:44:52 UTC
In openSUSE 10.2 Alpha4Plus I dont't get the error on the console anymore. But selecting Help->Web->MonoDevelop shows an error dialog ('Could not open the url http://www.monodevelop.com').

This is with monodevelop-0.12.2 and mozilla-xulrunner180-1.8.0.6-5.
Comment 17 Marcus Camen 2006-10-29 12:07:41 UTC
Ok, seems to be fixed in 10.2 Beta1