Trouble is that these libraries have different names and are all
present. It should be to the applications to decide whatever library
they want to use and the system shoud not interfere in any way. Albeit
it looks like there is some weird interferences for some applications.
The new libpng libraries don't lack any functional things as I would say
the 1.2 are old freezed version receiving only security updates. The
matter is that png_struct and png_info data are no more in header files
(for devel) and that the source code of applications has to be adapted
to this reality using png_get_xxx() and png_set_xxx() accessor
functions. Some applications developpers refused to do and locked down
the libnpg shared library to the 1.12 version.

Here is the result of

$ sudo ldconfig -v > ldconfig-v.log

attached. Both libpng libraries are visible in the log.

Here is a summary of what I have done about libpng in my system.
------------------------------------------------------------------------------------------
I have set the libpng16 in /usr/lib/ (this is the default from compiling the 
tarball) and made sym links to /usr/lib/x86_64-linux-gnu

Compiled package libpng16-0_1.6.2-0ubuntu0_amd64.deb
------------------------------------------------------
Installed Files
---------------
/usr/bin/libpng-config                  ---> symbolic link to libpng16-config
/usr/bin/libpng16-config
+/usr/include/libpng                    ---> symbolic link to libpng16
/usr/include/libpng16
/usr/include/libpng16/png.h
/usr/include/libpng16/pngconf.h
/usr/include/libpng16/pnglibconf.h
/usr/include/png.h                      ---> symbolic link to libpng16/png.h
/usr/include/pngconf.h                  ---> symbolic link to libpng16/pngconf.h
/usr/include/pnglibconf.h               ---> symbolic link to 
libpng16/pnglibconf.h
/usr/lib/libpng.a                       ---> symbolic link to libpng16.a
/usr/lib/libpng.la
/usr/lib/libpng.so                      ---> symbolic link to libpng16.so
/usr/lib/libpng16.a
/usr/lib/libpng16.la
/usr/lib/libpng16.so                    ---> symbolic link to libpng16.so.16.2.0
/usr/lib/libpng16.so.16                 ---> symbolic link to libpng16.so.16.2.0
/usr/lib/libpng16.so.16.2.0
/usr/lib/pkgconfig
/usr/lib/pkgconfig/libpng.pc            ---> symbolic link to libpng16.pc
/usr/lib/pkgconfig/libpng16.pc
/usr/share/man/man3
/usr/share/man/man3/libpng.3.gz
/usr/share/man/man3/libpngpf.3.gz
/usr/share/man/man5
/usr/share/man/man5/png.5.gz

I did add a symbolic link named libpng12.so.0 ---> libpng.so
----------------------------------------------------------------
$ cd /usr/lib/
$ sudo ln -s libpng.so libpng12.so.0

Package libpng12-0 (Official Ubuntu)
------------------------------------
libpng12-0              1.2.46-3ubuntu4         PNG library - runtime

Installed Files
---------------
/lib/x86_64-linux-gnu/libpng12.so.0             ---> symbolic link to 
libpng12.so.0.46.0
/lib/x86_64-linux-gnu/libpng12.so.0.46.0
/usr/share/doc-base/libpng12
/usr/share/doc/libpng12-0
/usr/share/doc/libpng12-0/ANNOUNCE
/usr/share/doc/libpng12-0/KNOWNBUG
/usr/share/doc/libpng12-0/README.Debian
/usr/share/doc/libpng12-0/README.gz
/usr/share/doc/libpng12-0/TODO
/usr/share/doc/libpng12-0/changelog.Debian.gz
/usr/share/doc/libpng12-0/copyright
/usr/share/doc/libpng12-0/libpng-1.2.46.txt.gz

Pacakge libpng12-dev (Official Ubuntu)
--------------------------------------
libpng12-dev            1.2.46-3ubuntu4         PNG library - development

Installed Files
---------------
/usr/bin/libpng-config                  ---> symbolic link to libpng12-config
/usr/bin/libpng12-config
/usr/include/libpng                     ---> symbolic link to libpng12
/usr/include/libpng12
/usr/include/libpng12/png.h
/usr/include/libpng12/pngconf.h
/usr/include/png.h                              ---> symbolic link to 
libpng12/png.h
/usr/include/pngconf.h                          ---> symbolic link to 
libpng12/pngconf.h
/usr/lib/x86_64-linux-gnu/libpng.a              ---> symbolic link to libpng12.a
/usr/lib/x86_64-linux-gnu/libpng.so             ---> symbolic link to 
libpng12.so
/usr/lib/x86_64-linux-gnu/libpng12.a
/usr/lib/x86_64-linux-gnu/libpng12.so           ---> symbolic link to 
/lib/x86_64-linux-gnu/libpng12.so.0
/usr/lib/x86_64-linux-gnu/pkgconfig
/usr/lib/x86_64-linux-gnu/pkgconfig/libpng.pc   ---> symbolic link to 
libpng12.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/libpng12.pc
/usr/share/doc/libpng12-dev
/usr/share/doc/libpng12-dev/changelog.Debian.gz ---> symbolic link to 
../libpng12-0/changelog.Debian.gz
/usr/share/doc/libpng12-dev/copyright
/usr/share/doc/libpng12-dev/examples
/usr/share/doc/libpng12-dev/examples/example.c.gz
/usr/share/doc/libpng12-dev/examples/pngtest.c.gz
/usr/share/doc/libpng12-dev/examples/pngtest.png
/usr/share/man/man1
/usr/share/man/man1/libpng-config.1.gz          ---> symbolic link to 
libpng12-config.1.gz
/usr/share/man/man1/libpng12-config.1.gz
/usr/share/man/man3
/usr/share/man/man3/libpng.3.gz
/usr/share/man/man5
/usr/share/man/man5/png.5.gz

At the moment I have no experience in forcing LD to look at alternative
path at compile time. I will give it a try may be.

** Attachment added: "$ ldconfig -v"
   
https://bugs.launchpad.net/ubuntu/+source/banshee/+bug/1191195/+attachment/3704867/+files/ldconfig-v.log

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1191195

Title:
  Cannot launch banshee: Unhandled Exception:
  System.DllNotFoundException: libgtk-x11-2.0.so.0

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/banshee/+bug/1191195/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to