View previous topic :: View next topic |
Author |
Message |
mattig n00b
Joined: 10 Jul 2015 Posts: 2 Location: Sydney, Australia
|
Posted: Fri Jul 10, 2015 11:38 pm Post subject: Taskcoach OSError: libXss.so.1 No such file or directory |
|
|
Hi All,
Taskcoach (tried both amd64 stable 1.3.18 and unstable 1.3.40) installs without error, but fails to start with the following message:
Quote: | OSError: libXss.so.1: cannot open shared object file: No such file or directory |
It is correct, the file libXss.so.1 (or any file containing 'libXss') is not in my shared libraries in either 32 bit or 64 bit libararies.
This is the exact error of upstream bug: http://sourceforge.net/p/taskcoach/bugs/1082/
It was apparently corrected upstream in taskcoach version release 1.3.4 as we can see at this address: http://www.taskcoach.org/all_changes.html
So, my nooby conclusion is that there is a dependency missing somewhere in way gentoo compiles taskcoach for me - ie the libXss library. I assumed that this would be part of the ebuilds, but they don't contain this kind of information.
So, should I be filing a bug against the taskcoach ebuilds? What can I read to look more into how library dependencies are pulled in by the compiler? Googling didn't seem to help me here. (p.s. the offending command is _xss=CDLL('libXss.so.1') in a file called __init__.py)
Any advice? _________________ Fair Winds,
Matt G /|\ |
|
Back to top |
|
|
ct85711 Veteran
Joined: 27 Sep 2005 Posts: 1791
|
Posted: Sat Jul 11, 2015 1:09 am Post subject: |
|
|
well, according to my system, I get this for libXss.so
Code: | ct85711@Oate ~ $ locate libXss
/usr/lib32/libXss.so
/usr/lib32/libXss.so.1
/usr/lib32/libXss.so.1.0.0
/usr/lib64/libXss.so
/usr/lib64/libXss.so.1
/usr/lib64/libXss.so.1.0.0
ct85711@Oate ~ $ equery b libXss.so.1
* Searching for libXss.so.1 ...
x11-libs/libXScrnSaver-1.2.2-r1 (/usr/lib32/libXss.so.1 -> libXss.so.1.0.0)
x11-libs/libXScrnSaver-1.2.2-r1 (/usr/lib64/libXss.so.1 -> libXss.so.1.0.0)
|
You may want to try installing x11-libs/libXScrnSaver and see if that will fix resolve the problem. If that works, then may want to file a bug report in regards to the missing dependency for the package...
Going by the changelog for the package, this sounds like the package maintainer didn't pay attention to what dependencies are needed, considering it was added as a dependency oseveral versions ago (I didn't trace portage's dependency chain for this package back to see where it should have been installed). |
|
Back to top |
|
|
mattig n00b
Joined: 10 Jul 2015 Posts: 2 Location: Sydney, Australia
|
Posted: Sat Jul 11, 2015 2:08 am Post subject: |
|
|
Thank you ct85711! That did indeed work. Task coach now loads up perfectly.
Unfortunately I am one of those annoying people that wants to learn from problems! New questions:
How do I trace portage's dependency chain for this package to see where it should have been installed? I can use equery depgraph to find all the package dependency, but does this tell me which one should have installed the file libXss.so.1?
I guess my question really relates to how packages set their library dependencies. It isn't directly in the ebuild, so where are the gcc and installation commands located? (I'm expecting a Guru to respond to this with a link saying "read this article you silly newbie").
Basically this will tell me who should be fixing this - the ebuild maintainer, or taskcoach developers (i.e. where do I file the bug, and see the code that should be fixed). _________________ Fair Winds,
Matt G /|\ |
|
Back to top |
|
|
ct85711 Veteran
Joined: 27 Sep 2005 Posts: 1791
|
Posted: Sat Jul 11, 2015 3:22 am Post subject: |
|
|
It's no problem at all on explaining and teaching (actually it's nice to encounter people that is interested in learning how to do this troubleshooting, as they tend to be able to fix their problems later on, and help others too).
The first part, there isn't a easy way I know of to figure out what package provided a missing file (if it's already on your system, equery belongs works great). In this case, I happened to have this file, so I was easily able to identify the package it came from.
In general, if a package depends on something, it should be listed in their ebuild. There is 2 main types of dependencies that we worry about, build and runtime (just like the name says). By having the a package listed in the dependencies lets portage know it needs to ensure that package is installed, and ensure they are not removed during depclean.
taskcoach-1.3.40.ebuild: | DEPEND=">=dev-python/wxpython-2.8.9.2:2.8[${PYTHON_USEDEP}]
>=dev-python/twisted-core-10.0"
RDEPEND="${DEPEND}
libnotify? ( dev-python/notify-python[${PYTHON_USEDEP}] )"
|
In taskcoach's ebuild, you can see the 3 dependencies listed on being needed are wxpython, twisted-core and notify-python.
Usually, you should just submit a bug report here, and the devs here will forward the issues as needed upstream. In this case, upstream already identified libXss.so was a dependency (in this case mentioned in changelog, but probably listed in the documentation for building the package too). |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|