Bug#933533: FTBFS on x32 (due to optimize-gmp=False): Variable not in scope: unsafeShiftL :: t -> Integer -> t
Laurence Parry
greenreaper at gmail.com
Sun Aug 11 04:22:18 BST 2019
On Thu, 1 Aug 2019 00:58:44 +0000 Clint Adams <clint at debian.org> wrote:
> On Wed, Jul 31, 2019 at 10:29:56AM +0100, Laurence Parry wrote:
> > The issue appears to have been reported upstream as
> > "cborg fails to compile when optimize-gmp is disabled"
> > https://github.com/well-typed/cborg/issues/193
>
> Patch applied, but I'm curious as to why optimize-gmp is False.
>From ghc's rules:
ifeq (x32,$(DEB_HOST_ARCH))
echo "INTEGER_LIBRARY = integer-simple" >> mk/build.mk
endif
Hence https://packages.debian.org/sid/ghc shows:
dep: libgmp10 [not x32]
(as does https://packages.debian.org/unstable/libghc-cborg-dev )
This was inserted in:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=814657
I believe this may be a response to:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=724320
or Adrian just having run across that issue here, per a comment in:
https://gitlab.haskell.org/ghc/ghc/issues/11571
GHC's linkage between Integer and pointers may be part of this:
https://gitlab.haskell.org/ghc/ghc/issues/8299
There is a suggestion that GMP might be replaced, but I don't know how
likely it is or whether it would help x32-style situations without the
above being resolved:
https://gitlab.haskell.org/ghc/ghc/wikis/replacing-gmp-notes
https://gitlab.haskell.org/ghc/ghc/issues/601
Performance-wise it seems to matter more for things like multiplies and divides:
http://www.mega-nerd.com/erikd/Blog/CodeHacking/Haskell/integer_pt1.html
(and probably for more complex operations).
Best regards,
--
Laurence "GreenReaper" Parry
More information about the Pkg-haskell-maintainers
mailing list