Anonymous | Login | 2024-04-27 23:29 CEST |
Main | My View | View Issues |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | ||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||
0005085 | [libgamin_dev] | minor | always | 2013-07-01 20:23 | 2013-10-27 09:11 | ||
Reporter | mi | View Status | public | ||||
Assigned To | raos | ||||||
Priority | normal | Resolution | fixed | ||||
Status | closed | ||||||
Summary | 0005085: libgamin_dev creates broken symlink for libfam.so | ||||||
Description |
After installing libgamin_dev I got the following files: % grep libfam /var/sadm/install/contents /opt/csw/lib/libfam.so=libfam.so.0.0.0 s none CSWlibgamin-dev /opt/csw/lib/sparcv9/libfam.so=libfam.so.0.0.0 s none CSWlibgamin-dev Note, that there are two symlinks -- but not the files they are pointing at. The libfam.so.0.0.0 does not exist neither in /opt/csw/lib nor in /opt/csw/lib/sparcv9 Perhaps, the symlink should point at libgamin.so? |
||||||
Additional Information | Solaris 10. Using libgamin_dev-0.1.10,REV=2011.12.09-SunOS5.10 and libgamin1_0-0.1.10,REV=2011.12.09 | ||||||
Tags | No tags attached. | ||||||
Attached Files | |||||||
|
Notes | |
(0010458) dam (administrator) 2013-07-01 22:15 |
The libfam.so.0 library is in fact in CSWlibfam0, but as it is a legacy library it is not pulled in by default: http://sourceforge.net/apps/trac/gar/browser/csw/mgar/pkg/gamin/trunk/Makefile#L46 [^] I am not sure if pulling in this library is a requirement. Maybe you can elaborate the working of the software you are compiling against fam? |
(0010459) raos (manager) 2013-07-02 08:01 |
I believe to know, that there is software out there which checks for existence libfam (can't recall which one though). Further, according to https://people.gnome.org/~veillard/gamin/differences.html, [^] libfam from gamin is binary compatible to the SGI fam implementation. So, even tough, SGI libfam is legacy, I would pull in gamin libfam in libgamin-dev. Opinions? |
(0010462) mi (reporter) 2013-07-03 21:12 |
The software I'm building needs fam.h to compile and -lfam to link. Whether -lfam is provided by FAM or Gamin does not matter -- Gamin is a drop-in replacement for FAM. It is API-compatible and, perhaps, even ABI compatible... For example, on my FreeBSD desktop I have: % pkg_info -W /opt/lib/libfam.so.0 /opt/lib/libfam.so.0 was installed by package gamin-0.1.10_4 CSWgamin, instead, installs libgamin.so. In such a case, perhaps, libfam.so should be a symlink to libgamin, but not a broken symlink to libfam.so.0.0.0. |
(0010463) dam (administrator) 2013-07-03 21:30 |
Just to make sure: Does your software compile after you install CSWlibfam0 ? |
(0010464) mi (reporter) 2013-07-04 02:14 |
Yes, it does. It was written for FAM -- before Gamin appeared on the scene. All of the FAM-using software out there can be built against either. Gamin is just more feature-full and has more OS-specific backends (kqueue for BSD, /dev/poll for Solaris, inotify or whatever on Linux, etc.) to do its job efficiently. |
(0010477) raos (manager) 2013-07-07 21:30 |
Just pushed a respin of gamin in unstable, which pulls in libfam when ibgamin_dev is installed. |
(0010479) mi (reporter) 2013-07-08 16:08 |
raos, could you clarify, please? My reading of your last comment is that libgamin_dev now depends on FAM, which would be very very wrong... |
(0010480) raos (manager) 2013-07-08 17:17 |
Sorry for the fuzz. What I meant: when installing libgamin_dev, or CSWlibgamin-dev, for that matter, *gamin's* CSWlibfam0 will be automatically installed. In other words, I is now the same way as on FreeBSD, for instance. |
(0010481) mi (reporter) 2013-07-08 17:31 |
Thanks, but what will gamin's CSWlibfam0 install? All that's currently wrong with gamin_dev is that the libfam.so.0 symlink it creates points at the non-existant libfam.so.0.0.0 instead of the present libgamin.so Will CSWlibfam0 create the missing libfam.so.0.0.0? Will that be identical to libgamin.so or a link (symbolic or hard) to it? |
(0010486) raos (manager) 2013-07-09 17:33 |
> All that's currently wrong with gamin_dev is that the libfam.so.0 symlink it creates points at the non-existant libfam.so.0.0.0 instead of the present libgamin.so Doing that so would be wrong. Even FreeBSD did not do it that way. When you install libgamin_dev, you will now automatically receive CSWlibfam0 as a dependency, which will provide (create) libfam.so.0.0.0. Now, there is libfam.so points to libfam.so.0.0.0 and libgamin-1.so (there is no libgamin.so) points to libgamin-1.so.0.1.10. Judging from the file size, libfam.so.0.0.0 and libgamin-1.so.0.1.10 are not identical. Anyhow, use pkgutil to update libgamin_dev and try to rebuild your application. |
(0010487) mi (reporter) 2013-07-09 18:24 |
You are right, that FreeBSD does not create libgamin.so. The gamin package (we don't split things into foo and foo_dev -- that seems like a Linux thing) installs simply libfam.so, which is a symlink to libfam.so.0. The CSW package does install the same library as libgamin-1.so.*, which is fine. All that's needed is for the libfam.so to exist and point to a valid, Gamin-provided library. When I reported the broken symlink, I expected the symlink to be fixed to point to libgamin.so. Dragging in the actual FAM in order to install Gamin (or Gamin_dev) is crazy -- Gamin is a replacement for FAM, it can not require FAM to function. If CSWlibfam0's libfam.so.0.0.0 and CSWgamin's libgamin-1.so.0.1.10 are not identical, then either CSWlibfam0 is installing an older version of Gamin implementation or it is simply the FAM implementation. Neither choice is a good one. Pointing libfam.so to libgamin-1.so.0.1.0 seems like the best solution at this time -- it is what I did by hand here and my application is working... |
(0010489) raos (manager) 2013-07-10 07:54 |
Just to make sure we're on the same page. When I'm talking about libfam, I don't talk about *SGI FAM*. SGI FAM has gone. The libfam I talk, comes with gamin. It is part of the upstream release. Also the symlinks, they are created by the upstream release of gamin. And so far, I don't see any reason why the upstream release should be wrong. |
Copyright © 2000 - 2008 Mantis Group |