Fix showfoto usability.

This resolves issue #50.

The problem seems to be a known issue already addressed by the original
authors. This is an extract from the 'ChangeLog' file that best
describes the issue:
```
Fix a linking problem with showfoto, image plugins and
--enable-gcc-hidden-visibility:
All image plugins link to libdigikam.so.
The showfoto executable however does not link to this lib, but
statically links the relevant parts.
With visibility hidden, now the linker obviously cannot see the
already linked DImgInterface class,
and there would be two different static variables for
DImgInterface::instance(). One with the loaded
image, the other (from the image plugins) with a null image.
```
Linking against libdigikam.so instead of including the libraries in a
static way solves the issue.

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit f8074c05d9)
r14.1.x
Michele Calgaro 8 months ago
parent bbb36b6c0f
commit 0254a5942b
Signed by: MicheleC
GPG Key ID: 2A75B7CA8ADED5CF

@ -44,7 +44,7 @@ tde_add_library( digikam SHARED AUTOMOC
tagfolderview.cpp tagspopupmenu.cpp timelinefolderview.cpp timelineview.cpp timelinewidget.cpp
upgradedb_sqlite2tosqlite3.cpp welcomepageview.cpp
LINK
sqlite2-static thumbbar-static themeengine-static dialog-static metadatawidgets-static
sqlite2-static thumbbar-static themeengine-static dialog-static metadatawidgets-static
iccprofileswidgets-static imagepluginswidgets-static commonwidgets-static
jpegutils-static dimg-static imagepropertiesdigikam-static threadimageio-static
greycstoration-static batch-static slideshow-static cameragui-static

@ -25,8 +25,7 @@ add_subdirectory( setup )
tde_add_executable( showfoto AUTOMOC
SOURCES main.cpp showfoto.cpp
LINK
imagepropertiesshowfoto-static jpegutils-static showfoto-static showfotosetupinternal-static
slideshow-static themeengine-static threadimageio-static thumbbar-static
showfotosetupinternal-static digikam-shared
tdeparts-shared tdeutils-shared ${CMAKE_THREAD_LIBS_INIT} ${KDCRAW_LIBRARIES} ${KEXIV2_LIBRARIES}
DESTINATION ${BIN_INSTALL_DIR}
)

Loading…
Cancel
Save