Bug 863499
Summary: | error while loading shared libraries: libHSleksah-0.12.1.3-ghc7.4.1.so: cannot open shared object file: No such file or directory | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Matteo Settenvini <matteo> |
Component: | leksah | Assignee: | Narasimhan <lakshminaras2002> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | 18 | CC: | haskell-devel, lakshminaras2002 |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | leksah-0.12.1.3-6.fc18 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2012-12-04 03:10:31 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Matteo Settenvini
2012-10-05 15:33:39 UTC
I will take a look. Setting LD_LIBRARY_PATH to the leksah directory inside /usr/lib64/ghc-7.4.1 works. I will check why the path information is not getting written while building the rpm. The rpath information in leksah starts with /builddir/build/BUILD/leksah-0.12.1.3/dist/build and hence the "library not found" error. leksah exports modules in a library package and this package is in turn listed as a dependency for the executable. If we use --shared option, this exported package becomes a shared library dependency for leksah binary. Before 7.4.1, I patched leksah to remove the library as a dependency. This was done to solve an issue that occurred while running haddock after build ( http://hackage.haskell.org/trac/hackage/ticket/656 ). The issue got fixed in 7.4.1 and I removed the patch. This "library not found" issue could have been there before but never surfaced because of the patch. I checked that putting the patch back again removes libHSleksah-0.12.1.3-ghc7.4.1.so as a dependency of leksah binary and the issue is fixed. Built for rawhide. http://koji.fedoraproject.org/koji/taskinfo?taskID=4584121 F18 scratch build http://koji.fedoraproject.org/koji/buildinfo?buildID=359681 Build for f18 will be done once ghc-7.4.1 update gets pushed to stable. Incorrect update Built for rawhide. http://koji.fedoraproject.org/koji/buildinfo?buildID=359681 F18 scratch build https://koji.fedoraproject.org/koji/taskinfo?taskID=4584107 I see - sorry my fault for just dropping that patch earlier. The self-dependency is "interesting" though - maybe worth asking upstream about the story behind it? As such it has the potential to save a lot of build time. How about trying to use chrpath to edit the RPATH in the leksak binary instead? So actually I had the same problem when moving "back" to monolithic haskell-platform. Anyway I think you can fix it like this: BuildRequires: chrpath : : %install : PROG=%{buildroot}%{_bindir}/%name RPATH=$(chrpath $PROG| sed -e "s!^$PROG: RPATH=!!") case $RPATH in *$PWD*) NEWRPATH=$(echo $RPATH | sed -e "s!$PWD!%{ghclibdir}!g" -e "s!/dist/build!!g") chrpath -r $NEWRPATH $PROG ;; esac (taken from haskell-platform.spec though untested here). Then you could drop the patch and benefit from the shared lib. In the long term I would like to see all dynamically linked binlib haskell packages doing this. Jens, I think you were right in dropping the patch earlier because the haddock issue was fixed in ghc-7.4.1. Thanks for the new patch. I did modify rpath of leksah binary using chrpath and was able to get it working. I will incorporate this into the spec file for f18 and rawhide. Jens, I have built leksah for F18 with the deps patch. I will try out the patch that you have mentioned in comment 6 in rawhide and then port it back to F18. Will keep this bug open. leksah-0.12.1.3-6.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/leksah-0.12.1.3-6.fc18 leksah-0.12.1.3-6.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report. works for me closing for bodhi |