ubuntu 20
[booh] / INSTALL
diff --git a/INSTALL b/INSTALL
index 802ee0170cb04f39e7b051b1219442267e2acb9d..e0c1787d026cfd73c6c9a1096f2bc99a8875dcc0 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,10 +1,16 @@
 This software requires for compiling:
 
-- gtk >= 2.6
+- gtk >= 2.8
+- devel of gtk
 - ruby
 - ruby-gettext >= 0.8.0
-- ruby-gtk2 >= 0.12
+- ruby-gtk2 >= 0.12; notice:
+  - ruby-gtk2 0.15.0, 0.17.0 and 0.18.1 should be avoided, they are known
+    problematic versions
+  - with ruby >= 1.8.7, ruby-gtk2 >= 0.18.0 should be used, otherwise
+    crashes will occur
 - devel of ruby-gnome2 (mkmf-gnome2.rb, rbgobject.h)
+- devel of libexiv2 (and thus, g++)
 
     Note: theoretically, gtk and ruby-gtk2 are not needed if
     you're gonna use only the backend script (the only lost
@@ -14,11 +20,16 @@ This software requires for compiling:
 
 And for runtime:
 
-- exif (the binary - coming from http://sourceforge.net/projects/libexif)
-- convert/identify (from ImageMagick)
-- transcode (not strictly needed if you won't manipulate any video)
-- mencoder (id.)
-
+- convert (from ImageMagick) - for photos thumbnails generation
+- identify (from ImageMagick) - for photos captions
+- exif - to show full formatted EXIF information from photos
+- mplayer - for videos thumbnails generation
+- ffmpeg (with mp3lame compiled in) - for generating embedded
+  .flv videos, to use with flowplayer (may not be a hard require)
+- gimp - for photos editing (may not be a hard require)
+- mozilla-firefox - for showing albums in browser, and going on the
+  web for tutorials (may not be a hard require)
+- lftp - for uploading web-albums
 
         Compiling and Installing Quick Start
 
@@ -27,7 +38,32 @@ Type this as normal user:
  # ruby setup.rb config
  # ruby setup.rb setup
  # cd ext
- # ruby extconf.rb
+ # ruby extconf.rb && make
+
+*** Troubleshooting:
+
+- on ubuntu 20, I receive a failure on mkmf-gnome2 lib loading indicating missing
+  mkmf-gnome; "sudo gem install gtk3" workarounds this problem
+
+- if that fails on missing GTK header file (gtk.h), you can try to
+  inject cflags with such a command:
+
+ # perl -pi -e 's/(CXXFLAGS.*)/$1 `pkg-config --cflags gtk+-2.0`/' Makefile
+ # make
+
+- if that fails on redefinition of struct re_registers and you have
+  ruby-2.3, you can try to workaround with:
+
+ # cp /usr/include/ruby-2.3.0/ruby.h .
+ # perl -pi -e 's/.*HAVE_RUBY_ENCODING_H.*//' ruby.h
+ # make
+
+- if that fails on redefinition of struct re_registers and you have
+  ruby-2.5, you can try to workaround with:
+
+ # mkdir exiv2
+ # cp -a /usr/include/exiv2/* exiv2
+ # perl -pi -e 's/#define EXV_HAVE_REGEX 1//' exiv2/exv_conf.h
  # make
 
 And type this as superuser:
@@ -37,14 +73,17 @@ And type this as superuser:
  $ make install
 
 If you want to package as normal user to another root:
- $ rm -rf %buildroot
- $ ruby setup.rb install --prefix=%buildroot
- $ cd ext
- $ make install DESTDIR=%buildroot libdir=%buildroot%{_libdir} archdir=%buildroot%ruby_archdir
 
- ruby_archdir being the result of: ruby -rrbconfig -e "puts Config::CONFIG['sitearchdir']"
+ $ ruby_archdir=`ruby -rrbconfig -e "puts Config::CONFIG['sitearchdir']"`
+ $ libdir=`ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']"`
+ $ rm -rf ${buildroot}
+ $ ruby setup.rb install --prefix=${buildroot}
+ $ cd ext
+ $ make install DESTDIR=${buildroot} libdir=${buildroot}${libdir} archdir=${buildroot}${ruby_archdir}
 
 Note: it will install things in traditional directories plus
-ruby_archdir and ruby_libdir, the latter one being the result of
-ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']"
+ruby_archdir and ruby_libdir.
+Change FPATH in ${buildroot}/local/lib/site_ruby/1.8/booh/config.rb to suit your $buildroot
 
+Find desktop stuff (.desktop entry and icons) for your menu/packaging system
+in the destkop/ subdir.