[Digikam-devel] [digikam] [Bug 323888] Face recognition makes digikam fill all the available memory

Scott scott_bugs at dewie.net.au
Thu May 1 01:51:42 BST 2014


https://bugs.kde.org/show_bug.cgi?id=323888

--- Comment #57 from Scott <scott_bugs at dewie.net.au> ---
I can confirm that this bug has been fixed in libpgf upstream, and therefore
Digikam.  Of course though, the libpgf package still hasn't made it to the
Debian/Ubuntu repo's as yet...

The steps that I took to resolve this (on x64 Ubuntu 13.10, running digikam
from the package maintained by msylwester's ppa), and I am trying to make this
as accessible to the everyday user as possible: 

Firstly: Don't uninstall the official package if you installed digikam from a
repository!! It is a dependency of digikam, so you want the system to think it
is there still!  As I am still a reasonably new user to compiling from source,
I know no better way than to fool the system into thinking it has one version,
when it has a newer...

Get the package source from here: 
http://sourceforge.net/projects/libpgf/files/libpgf/6.14.12-latest/libpgf-src-6.14.12.tar.gz/download

unpack it in a terminal using:   
tar -xzvf libpgf-src-6.14.12.tar.gz 

Get the required essentials for building packages if you havent already:    
sudo apt-get install build-essential checkinstall  

On top of build-essentials etc. you also need libtools and automake.   Get
those too: 
sudo apt-get install libtools automake

Once you've got those, cd to the directory where libpgf extracted to, then run 
./autogen.sh

Once that has finished, you need to run 
./configure

For me, there seemed to be an error in the generated config file due to a
malformed command.  I kept getting the error: ".in'ig.status: error: cannot
find input file: `Makefile".  To resolve this, open the configure file using
your favourite text editor, for me it's: 
gedit configure

Search for a line that has "cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1"
(the easiest way is just to search for ">$C" and it should come up.  Add a
space in between the > and $ so the line then reads: "cat > $CONFIG_STATUS
<<_ASEOF || as_write_fail=1".  Save and close the file and rerun:
./configure

If all goes well, proceed as normal: 
make
sudo make install

There is one final step though.  This technique puts the libraries in the wrong
position for digikam.  It puts them in the /usr/local/lib/, while digikam looks
for them in /usr/lib/x86_64-linux-gnu/ but this is easily fixed by copying them
to the correct location running:
sudo cp -f /usr/local/lib/libpgf.so.6.0.11
/usr/lib/x86_64-linux-gnu/libpgf.so.6 && sudo cp -f
/usr/local/lib/libpgf.so.6.0.11 /usr/lib/x86_64-linux-gnu/libpgf.so.6.0.7 &&
sudo cp -f /usr/local/lib/libpgf.so.6.0.11
/usr/lib/x86_64-linux-gnu/libpgf.so.6.0.11

This forces any other programs that may be looking for libpgf.so.6.0.7 to use
libpgf.so.6.0.11 also.  And for those others out there, yes I know I could have
made symlinks, but every time I tried, the links were broken...  I have no idea
what I was doing wrong, but copying worked, so I'm sticking with it...

Once I had done this, the first tag took forever still, but after the first
went much, much quicker than previously.  Good work libpgf team!

Hope this helps a bit for some...  Now just to wait for the official repos to
catch up. :)

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Digikam-devel mailing list