#5743: Configurably use system-provided libffi
---------------------------------+------------------------------------------
Reporter: nomeata | Owner:
Type: feature request | Status: new
Priority: normal | Milestone: 7.6.1
Component: Build System | Version: 7.2.1
Keywords: | Os: Linux
Architecture: Unknown/Multiple | Failure: None/Unknown
Difficulty: Unknown | Testcase:
Blockedby: | Blocking:
Related: |
---------------------------------+------------------------------------------
Comment(by slyfox):
Moreover, ghc does not embed RPATH to libffi for packages using it:
{{{
sf haskell-updater-1.2.0.5 # /usr/bin/ghc -package Cabal-1.14.0 --make
/var/tmp/portage/app-admin/haskell-updater-1.2.0.5-r1/work/haskell-
updater-1.2.0.5/Setup.lhs -dynamic -o setup
Linking setup ...
sf haskell-updater-1.2.0.5 # lddtree ./setup
setup => ./setup (interpreter => /lib64/ld-linux-x86-64.so.2)
libHSCabal-1.14.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/Cabal-1.14.0/libHSCabal-1.14.0-ghc7.4.1.so
libHSprocess-1.1.0.1-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/process-1.1.0.1/libHSprocess-1.1.0.1-ghc7.4.1.so
libHSpretty-1.1.1.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/pretty-1.1.1.0/libHSpretty-1.1.1.0-ghc7.4.1.so
libHSdirectory-1.1.0.2-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/directory-1.1.0.2/libHSdirectory-1.1.0.2-ghc7.4.1.so
libHSunix-2.5.1.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/unix-2.5.1.0/libHSunix-2.5.1.0-ghc7.4.1.so
librt.so.1 => /lib64/librt.so.1
libpthread.so.0 => /lib64/libpthread.so.0
libutil.so.1 => /lib64/libutil.so.1
libdl.so.2 => /lib64/libdl.so.2
libHSbytestring-0.9.2.1-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/bytestring-0.9.2.1/libHSbytestring-0.9.2.1-ghc7.4.1.so
libHSold-time-1.1.0.0-ghc7.4.1.so => /usr/lib64/ghc-7.4.1/old-
time-1.1.0.0/libHSold-time-1.1.0.0-ghc7.4.1.so
libHSold-locale-1.0.0.4-ghc7.4.1.so => /usr/lib64/ghc-7.4.1/old-
locale-1.0.0.4/libHSold-locale-1.0.0.4-ghc7.4.1.so
libHSfilepath-1.3.0.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/filepath-1.3.0.0/libHSfilepath-1.3.0.0-ghc7.4.1.so
libHScontainers-0.4.2.1-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/containers-0.4.2.1/libHScontainers-0.4.2.1-ghc7.4.1.so
libHSdeepseq-1.3.0.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/deepseq-1.3.0.0/libHSdeepseq-1.3.0.0-ghc7.4.1.so
libHSarray-0.4.0.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/array-0.4.0.0/libHSarray-0.4.0.0-ghc7.4.1.so
libHSbase-4.5.0.0-ghc7.4.1.so =>
/usr/lib64/ghc-7.4.1/base-4.5.0.0/libHSbase-4.5.0.0-ghc7.4.1.so
libHSinteger-gmp-0.4.0.0-ghc7.4.1.so => /usr/lib64/ghc-7.4.1/integer-
gmp-0.4.0.0/libHSinteger-gmp-0.4.0.0-ghc7.4.1.so
libgmp.so.10 => /usr/lib64/libgmp.so.10
libHSghc-prim-0.2.0.0-ghc7.4.1.so => /usr/lib64/ghc-7.4.1/ghc-
prim-0.2.0.0/libHSghc-prim-0.2.0.0-ghc7.4.1.so
libHSrts-ghc7.4.1.so => /usr/lib64/ghc-7.4.1/libHSrts-ghc7.4.1.so
libffi.so.5 => not found
libm.so.6 => /lib64/libm.so.6
libc.so.6 => /lib64/libc.so.6
}}}
Notice '''libffi.so.5 => not found'''.
{{{
sf haskell-updater-1.2.0.5 # ls -l /usr/lib/ghc-7.4.1/libffi.so*
-rwxr-xr-x 1 root root 30832 апр. 14 21:20 /usr/lib/ghc-7.4.1/libffi.so
-rw-r--r-- 1 root root 30832 апр. 14 21:20 /usr/lib/ghc-7.4.1/libffi.so.5
-rw-r--r-- 1 root root 30832 апр. 14 21:19
/usr/lib/ghc-7.4.1/libffi.so.5.0.10
sf haskell-updater-1.2.0.5 # ls -l /usr/lib/libffi.so*
lrwxrwxrwx 1 root root 15 апр. 14 11:53 /usr/lib/libffi.so ->
libffi.so.6.0.0
lrwxrwxrwx 1 root root 15 апр. 14 11:53 /usr/lib/libffi.so.6 ->
libffi.so.6.0.0
-rwxr-xr-x 1 root root 30816 апр. 14 11:53 /usr/lib/libffi.so.6.0.0
}}}
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5743#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs