libffi was:Re: ANNOUNCE: GHC version 7.0.1

Christian Maeder Christian.Maeder at dfki.de
Thu Nov 18 06:24:24 EST 2010


Am 18.11.2010 11:12, schrieb Simon Marlow:
> On 17/11/2010 14:34, Christian Maeder wrote:
>> ghc can be built without and with libffi.
> 
> Which build option are you referring to here? 

I did not use any explicit build option, but just created a
binary-distribution from sources without having /usr/lib/libffi.

> libffi is required for
> FFI support in GHCi, and for FFI "wrapper" imports.  However on x86 and
> x86_64 we don't normally use libffi for wrappers, because we have a
> native implementation that is a bit faster (this is the
> UseLibFFIForAdjustors build option).
> 
>> What advantage do I gain in
>> the latter case? The packages that come with ghc (displayed by "ghc-pkg
>> dump") don't use it.
> 
> The RTS should depend on it.

"ghc-pkg describe rts" only lists:
 extra-libraries: m rt dl

also for the official ghc-7.0.1-i386-unknown-linux.tar.bz2 that is
linked against libffi (I hope not, unnecessarily). Does this mean that
GHCi is based on a different RTS?

C.

> 
> Cheers,
>     Simon
> 
> 
>> Thanks Christian
>>
>>
>> Am 16.11.2010 13:03, schrieb Christian Maeder:
>>> http://new-www.haskell.org/ghc/dist/7.0.1/ghc-7.0.1-i386-unknown-linux.tar.bz2
>>>
>>>
>>> ./configure failed with:
>>>
>>> checking for path to top of build tree... utils/ghc-pwd/ghc-pwd: error
>>> while loading shared libraries: libffi.so.5: cannot open shared object
>>> file: No such file or directory
>>> configure: error: cannot determine current directory
>>>
>>> ldd utils/ghc-pwd/ghc-pwd
>>>          linux-gate.so.1 =>   (0xffffe000)
>>>          libutil.so.1 =>  /lib/libutil.so.1 (0xb7718000)
>>>          libdl.so.2 =>  /lib/libdl.so.2 (0xb7713000)
>>>          libm.so.6 =>  /lib/libm.so.6 (0xb76e9000)
>>>          libffi.so.5 =>  not found
>>>          libgmp.so.3 =>  /usr/lib/libgmp.so.3 (0xb7693000)
>>>          librt.so.1 =>  /lib/librt.so.1 (0xb7689000)
>>>          libc.so.6 =>  /lib/libc.so.6 (0xb751e000)
>>>          /lib/ld-linux.so.2 (0xb7745000)
>>>          libpthread.so.0 =>  /lib/libpthread.so.0 (0xb7503000)
>>>
>>> The 64Bit version works, though.
>>>
>>> Christian
>>>
>>>
>>> Am 16.11.2010 01:09, schrieb Ian Lynagh:
>>>> How to get it
>>>> ~~~~~~~~~~~~~
>>>>
>>>> The easy way is to go to the web page, which should be
>>>> self-explanatory:
>>>>
>>>>          http://www.haskell.org/ghc/
>>>>
>>>>
>> _______________________________________________
>> Glasgow-haskell-users mailing list
>> Glasgow-haskell-users at haskell.org
>> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
> 


More information about the Glasgow-haskell-users mailing list