Bug 105221

Summary: Banshee dependencies not complete
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Timo Hoenig <thoenig>
Component: GNOMEAssignee: Aaron Bockover <abockover>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Minor    
Priority: P5 - None CC: gchristensen
Version: Beta 2   
Target Milestone: ---   
Hardware: Other   
OS: All   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Adding misssing Requires for libipoddevice to banshee.spec

Description Timo Hoenig 2005-08-17 14:51:45 UTC
The Banshee package is missing dependencies for GStreamer and thus does not start (default 
installation with GNOME selection).
Comment 1 Stanislav Brabec 2005-08-17 15:33:34 UTC
Does it report exact module name, which is missing?
Comment 2 Timo Hoenig 2005-08-18 09:31:40 UTC
Sorry, I was way too quick.

The bug reported was fixed with Beta 2.

Nevertheless, banshee does not work:

   * /usr/lib/banshee/mediaengines/gst/libgstmediaengine.so is missing

Once I symlinked to /usr/lib/banshee/mediaengines/gst/libgstmediaengine.so.0.0.0 it still does not 
work:

   * DllNotFoundException: ipoddevice

After installing libipoddevice banshee still does not start since banshee needs libipoddevice.so. 
Adding the symlink /usr/lib/libipoddevice.so -> /usr/lib/libipoddevice.so.0.0.0 solves this one and 
banshee finally starts.



Comment 3 Timo Hoenig 2005-08-18 09:36:43 UTC
Created attachment 46437 [details]
Adding misssing Requires for libipoddevice to banshee.spec
Comment 4 Timo Hoenig 2005-08-18 10:04:26 UTC
I am not sure if fixing the libgstmediaengine.so issue to correct 

   <dllmap dll="libgstmediaengine" target="@libdir@/@PACKAGE@/mediaengines/gst/
libgstmediaengine.so" />

or add the missin libgstmediaengine.so symlink to /usr/lib/mediaengines/gst .

An entry for libipoddevice is entirely missing in banshee.exe.config.in.

Another thing: Shouldn't banshee files move to /opt/gnome?
Comment 5 JP Rosevear 2005-08-18 13:23:13 UTC
Aaron, you probably want to add -module -avoid-version to the media engines.
Comment 6 Aaron Bockover 2005-08-18 14:27:52 UTC
1. Due to the still changing nature of the ipod-sharp API, I decided to bundle
the ipod-sharp.dll assembly with Banshee. ipod-sharp.dll.config has the dllmap
for libipoddevice, and I hadn't added it to banshee's configuration. This is
fixed in CVS.

2. The target for libgstmediaengine.so has been changed to libgstmediaengine.so.0

3. libnautilus-burn.so.1 has been changed to libnautilus-burn.so.2

4. Any other maps in the banshee configuration have been changed from *.so to
*.so.<VERSION>, to avoid having to install -devel packgaes.

5. I guess banshee could go in /opt/gnome, if it were configured with
--prefix=/opt/gnome for packaging. 
Comment 7 Timo Hoenig 2005-08-18 15:04:53 UTC
*** Bug 105569 has been marked as a duplicate of this bug. ***
Comment 8 Bryan Perry 2005-08-18 15:26:38 UTC
Here's what I get:

Unhandled Exception: System.DllNotFoundException:
/usr/lib/banshee/mediaengines/gst/libgstmediaengine.so
in (wrapper managed-to-native) Banshee.GstPlayer:gpe_new ()
in <0x0000f> Banshee.GstPlayer:Initialize ()
in <0x000ad> Banshee.Core:.ctor ()
in <0x0001f> Banshee.Core:get_Instance ()
in <0x000e7> Banshee.BansheeEntry:Main (System.String[] args)
Comment 9 Aaron Bockover 2005-08-25 22:31:54 UTC
For internal shared libraries, banshee is now using -module -avoid-version in
LDFLAGS, and the DLL Map has been updated accordingly. This should get rid of
all version mapping issues for internal maps. For external libraries, the maps
are to the version numbers of the shared library. libipoddevice, hal, and dbus
have also been added to the map.