Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 558758 - media-gfx/meshlab-1.3.3 installs plugins, but not where meshlab wants them
Summary: media-gfx/meshlab-1.3.3 installs plugins, but not where meshlab wants them
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Amy Liffey
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-25 18:47 UTC by Craig Steeves
Modified: 2015-11-17 18:02 UTC (History)
2 users (show)

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


Attachments
emerge --info (emerge.info,4.69 KB, application/x-info)
2015-08-25 18:47 UTC, Craig Steeves
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Craig Steeves 2015-08-25 18:47:11 UTC
Created attachment 410276 [details]
emerge --info

media-gfx/meshlab-1.3.3 builds on my system (emerge --info attached for completeness) and runs properly. However, meshlab depends upon various plugins for much of its functionality. The ebuild installs these plugins in /usr/lib64/meshlab/plugins:

src_install() {
        dobin distrib/{meshlab,meshlabserver}
        dolib distrib/libcommon.so.1.0.0
        dosym libcommon.so.1.0.0 /usr/$(get_libdir)/libcommon.so.1
        dosym libcommon.so.1 /usr/$(get_libdir)/libcommon.so

        exeinto /usr/$(get_libdir)/meshlab/plugins
        doexe distrib/plugins/*.so

        insinto /usr/share/meshlab/shaders
        doins -r distrib/shaders/*
        newicon "${S}"/meshlab/images/eye64.png "${PN}".png
        make_desktop_entry meshlab "Meshlab"
}

However, meshlab appears to be hard-coded to look for the plugins in /usr/bin - this can be seen by looking under the Help - About Plugins menu item in meshlab. There does not seem to be a way at build or run to configure this differently. Consequently much of meshlab's functionality is crippled. I think the same issue arises for the meshlab shaders, but I do not know where meshlab looks for them.

A workaround is to create symlinks in /usr/bin to the relevant plugins, but this clutters /usr/bin with links that need to be maintained manually. Alternately the ebuild can be modified to install plugins into /usr/bin, but this seems sub-optimal as it will put a lot of inappropriate files into /usr/bin. Third, the source can be patched to agree with the installation paths in the ebuild - this looks preferable.

However I don't know enough about writing patches to do the third (I couldn't even find the place in the source where the path is specified), hence filing the bug.
Comment 1 Alexandre Rostovtsev (RETIRED) gentoo-dev 2015-08-28 20:11:32 UTC
Maybe a patch is needed to load plugins from /usr/$(get_libdir)/meshlab/plugins instead of from a path relative to the executable.
Comment 2 Amy Liffey gentoo-dev 2015-08-29 07:42:51 UTC
(In reply to Alexandre Rostovtsev from comment #1)
> Maybe a patch is needed to load plugins from
> /usr/$(get_libdir)/meshlab/plugins instead of from a path relative to the
> executable.

You don't say :)) So are you working on it? ;)

Amy
Comment 3 Micha 2015-10-09 09:28:28 UTC
Hi,

I have the same problem and no idea how to fix this.
Comment 4 Amy Liffey gentoo-dev 2015-10-09 09:57:04 UTC
(In reply to Micha from comment #3)
> Hi,
> 
> I have the same problem and no idea how to fix this.

Than please use older version I will try to figure it out.

Amy
Comment 5 Amy Liffey gentoo-dev 2015-11-17 18:02:07 UTC
Hopefully repaired in:
author	Amy Winston <amynka@gentoo.org>	2015-11-17 17:58:11 (GMT)
committer	Amy Winston <amynka@gentoo.org>	2015-11-17 17:59:16 (GMT)
commit	294ebb1f6ae70e2db2d3bf624191abf4f7b67caf 

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