Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 827143 - media-gfx/gthumb-3.10.4: crash immediately when start, Could not load the mandatory extension 'cairo_io' when build with >=dev-util/meson-0.60
Summary: media-gfx/gthumb-3.10.4: crash immediately when start, Could not load the man...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: meson-0.60.x
  Show dependency tree
 
Reported: 2021-11-24 14:11 UTC by BrianHsu
Modified: 2021-11-26 02:30 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,656.54 KB, text/x-log)
2021-11-24 14:11 UTC, BrianHsu
Details
emerge --info media-gfx/gthumb (emerge-info,7.80 KB, text/plain)
2021-11-24 14:12 UTC, BrianHsu
Details

Note You need to log in before you can comment on or make changes to this bug.
Description BrianHsu 2021-11-24 14:11:01 UTC
When execute gthumb, it could not start and report:

** (gthumb:22355): CRITICAL **: 22:01:54.928: Could not load the mandatory extension 'cairo_io': Could not open the module ?cairo_io?: extensions/jpeg_utils/libjpeg_utils.so: cannot open shared object file: No such file or directory
fish: Job 1, 'gthumb' terminated by signal SIGABRT (Abort)


Reproducible: Always

Steps to Reproduce:
1. emerge =media-gfx/gthumb-3.10.4
2. execute /usr/bin/gthumb within a terminal 
Actual Results:  
gthumb did not start and crashed with the following message:

** (gthumb:22355): CRITICAL **: 22:01:54.928: Could not load the mandatory extension 'cairo_io': Could not open the module ?cairo_io?: extensions/jpeg_utils/libjpeg_utils.so: cannot open shared object file: No such file or directory
fish: Job 1, 'gthumb' terminated by signal SIGABRT (Abort)


Expected Results:  
gthumb correctly started.

1. It's same if I download the gthumb source code and compile myself.
2. noticed it complains about libjpeg_utils.so, and the build log shows:

    Library jpeg found: YES
    Checking if "libjpeg version is 8 or greater" with dependencies -lm, zlib, -ljpeg: compiles: NO 
    Checking for function "jpeg_simple_progression" with dependencies -lm, zlib, -ljpeg: YES 
3. My gentoo box just re-installed few days ago. I have use gThumb with my old gentoo system and works fine, suspect it related with some jpeg library issue.
4. I have two jpeg related library on my system:
    - media-libs/openjpeg-2.4.0:2/7::gentoo
    - media-libs/libjpeg-turbo-2.1.2:0/0.2::gentoo
Comment 1 BrianHsu 2021-11-24 14:11:28 UTC
Created attachment 756049 [details]
build.log
Comment 2 BrianHsu 2021-11-24 14:12:12 UTC
Created attachment 756055 [details]
emerge --info media-gfx/gthumb
Comment 3 Tee KOBAYASHI 2021-11-25 20:17:23 UTC
From build.log:

 * QA Notice: Unresolved soname dependencies:
 *
 *      /usr/lib64/gthumb/extensions/libcairo_io.so: extensions/jpeg_utils/libjpeg_utils.so
[...]

I see this message also in my environment after updating dev-util/meson to dev-util/meson-0.60.1 (from 0.59.4).

So a workaround seems to be to mask >=dev-util/meson-0.60.
Comment 4 BrianHsu 2021-11-26 01:10:06 UTC
Confirmed that after mask >=dev-util/meson-0.60 and emerge media-gfx/gthumb-3.10.4::gentoo again fix this problem.

Thanks very much.
Comment 5 Mike Gilbert gentoo-dev 2021-11-26 01:51:25 UTC
It looks like DT_RUNPATH is being removed from the .so files in the extensions directory.
Comment 6 Mike Gilbert gentoo-dev 2021-11-26 01:57:14 UTC
Nope, not DT_RUNPATH. It looks like DT_SONAME is not being set for shared_module targets.

https://github.com/mesonbuild/meson/issues/9492
Comment 7 Mike Gilbert gentoo-dev 2021-11-26 02:01:25 UTC
Upgrading to meson-0.60.2 improves the situation greatly. However, I still get one failure.

** (gthumb:229801): WARNING **: 21:00:35.932: Could not load the 'photo_importer' extension: Could not open the module “photo_importer”: extensions/importer/libimporter.so: cannot open shared object file: No such file or directory
Comment 8 Larry the Git Cow gentoo-dev 2021-11-26 02:29:45 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4eb421dfbf11992695da541c4dae5535235bd88

commit d4eb421dfbf11992695da541c4dae5535235bd88
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2021-11-26 02:28:37 +0000
Commit:     Mike Gilbert <floppym@gentoo.org>
CommitDate: 2021-11-26 02:28:37 +0000

    dev-util/meson: fix legacy soname behavior for shared_module targets
    
    Closes: https://bugs.gentoo.org/827143
    Signed-off-by: Mike Gilbert <floppym@gentoo.org>

 .../files/meson-0.60.2-check-module-linking.patch  | 28 ++++++++++++++++++++++
 ...{meson-0.60.2.ebuild => meson-0.60.2-r1.ebuild} |  4 ++++
 2 files changed, 32 insertions(+)
Comment 9 Mike Gilbert gentoo-dev 2021-11-26 02:30:22 UTC
Should be resolved in meson-0.60.2-r1.