Jj's web stream

Building F-spot from source - Continued

Following my past F-spot's post about the errors I ran into while building from source. I want to share how Google helped me to find the solution for the last error message I mentioned.

jj@freya:: f-spot                                                           [~]

Starting new FSpot server

(f-spot:5098): libglade-WARNING **: unknown attribute `comment' for


System.DllNotFoundException: GL

  at (wrapper managed-to-native) GdkGlx.Context:glXChooseVisual (intptr,int,int[])

  at GdkGlx.Context..ctor (Gdk.Screen screen, GdkGlx.Context share_list, System.Int32[] attr) [0×00000]

  at GdkGlx.Context..ctor (Gdk.Screen screen, System.Int32[] attr) [0×00000]

  at FSpot.PhotoImageView.HandleRealized (System.Object sender, System.EventArgs args) [0×00000]

  at FSpot.PhotoImageView..ctor (IBrowsableCollection query) [0×00000]

  at FSpot.PhotoView..ctor (IBrowsableCollection query) [0×00000]

  at MainWindow..ctor (.Db db) [0×00000]

  at FSpot.Core.get_MainWindow () [0×00000]

  at FSpot.Core.Import (System.String path) [0×00000]

  at FSpot.Driver.Main (System.String[] args) [0×00000]

The error mentioned the GL DLL is missing, issue that is solved following the directions given in this mailing list message.

jj@freya:: locate f-spot.exe.config                                         [~]




jj@freya:: view /usr/local/lib/f-spot/f-spot.exe.config                     [~]

jj@freya:: sudo vim $_

Then adding the line:


  <dllmap dll="libglib-2.0-0.dll" target="libglib-2.0.so.0"/>

  <dllmap dll="libgobject-2.0-0.dll" target="libgobject-2.0.so.0"/>

  <dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so.0"/>

  <dllmap dll="libgdk-2.0-0.dll" target="libgdk-x11-2.0.so.0"/>

  <dllmap dll="libgdk_pixbuf-2.0-0.dll" target="libgdk_pixbuf-2.0.so.0"/>

  <dllmap dll="libgnomevfs-2-0.dll" target="libgnomevfs-2.so.0"/>

  <dllmap dll="libgnomeui-2-0.dll" target="libgnomeui-2.so.0"/>

  <dllmap dll="libfspot" target="/usr/local/lib/f-spot/libfspot.so.0"/>

  <dllmap dll="libfspoteog" target="/usr/local/lib/f-spot/libfspoteog.so.0"/>

  <dllmap dll="libfspotjpeg" target="/usr/local/lib/f-spot/libfspotjpg.so.0"/>

  <dllmap dll="X11" target="libX11.so.6"/>

  <dllmap dll="libXcomposite.dll" target="libXcomposite.so.1"/>

  <dllmap dll="liblcms-1.0.0.dll" target="liblcms.so.1"/>

  <dllmap dll="libexif.dll" target="libexif.so.12"/>

  **<dllmap dll="GL" target="libGL.so.1"/>**


After that, in order to complete my F-spot migration from my old Gentoo instalation to my new built one, I had to do the following:

$ cd ~/.gnome2/f-spot/

$ cp $OLDDIR/photos.db photos.old.db

$ sqlite photos.old.db

sqlite> .mode insert

sqlite> .output photos.sql

sqlite> select * from photos;

sqlite> .q

$ vim photos.sql

vim> %s/mnt.old.path/new\/path/g

vim> %s/table/photos/g

vim> :wq

$ sqlite photos.old.db

sqlite> delete from photos;

sqlite> .read photos.sql

sqlite> .q

$ sqlite photos.old.db .dump|sqlite3 photos.db

$ f-spot

Happy f-spotting :D

F-spot 0.3.2