Opened 16 years ago
Closed 16 years ago
#5475 closed defect (fixed)
myth can't load plugins on x86_64
Reported by: | Owned by: | Isaac Richards | |
---|---|---|---|
Priority: | minor | Milestone: | 0.21.1 |
Component: | mythtv | Version: | 0.21-fixes |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
I'm using the packman packages for opensuse 11.0 on x86_64.
I installed the plugins, but they can't be found.
The issue is this:
access("/usr/lib/mythtv/plugins", F_OK) = -1 ENOENT (No such file or directory)
But the actual plugins are here:
wberrier@berrier:~> ls /usr/lib64/mythtv/plugins/ libmytharchive.so libmythcontrols.so libmythmusic.so libmythvideo.so
The code that loads this directory is here:
mythtv/libs/libmyth/mythcontext.cpp:
QString MythContext::GetLibraryDir?(void) {
return d->m_installprefix + "/lib/mythtv/";
}
QString MythContext::GetPluginsDir?(void) {
return GetLibraryDir?() + "plugins/";
}
GetLibraryDir? should load lib64 on this arch and should use 'libdir' that was passed to configure instead of hardcoding 'lib'.
Attachments (1)
Change History (7)
comment:1 Changed 16 years ago by
comment:2 Changed 16 years ago by
I imagine that packagers won't like having 64bit libs in /usr/lib. (It's particularly against suse packaging policy).
But I did notice that on x86_64 USE_LIB64_PATHES is defined while compiling mythcontext.cpp. That could be used to distinguish between 'lib' and 'lib64' in 'GetLibraryDir?'.
comment:3 Changed 16 years ago by
comment:4 Changed 16 years ago by
Hey-
I am experiencing this issue. Where do I apply this patch and recompile?
Thanks, Max
comment:5 Changed 16 years ago by
It is already in the latest 0-21-fixes. I am still building/testing on trunk. If you want to apply on trunk, please tell me if it works for you.
Wade, sorry I broke it for you. If you are able to revert to packages earlier than [17458], it will work again for you (as will creating a symlink).
My aim was to simplify the runtime plugin and filter location, buy always having them in $PREFIX/lib, but I forgot to make the change to mythtv/filters/filter-common.pro and mythplugins/configure. Looking at this afresh, people will probably hate that (install would create /usr/lib/mythtv/plugins), so I will have to pass the libname into MythContext.