simplexmq
simplexmq copied to clipboard
Build failure on Debian bookworm i386
This problem is probably in the upstream Haskell, this issue is created to document this problem.
Steps to reproduce:
- Bootstrap a i386 Debian bookworm chroot (build environment).
- Manually install GHC and Cabal following official guides 1 2
- Download simplexmq latest source.
-
cabal update && cabal build exe:smp-server exe:xftp-server
Expected result:
...
Configuring executable 'xftp-server' for simplexmq-6.0.2.0..
Configuring executable 'smp-server' for simplexmq-6.0.2.0..
Preprocessing executable 'xftp-server' for simplexmq-6.0.2.0..
Building executable 'xftp-server' for simplexmq-6.0.2.0..
Preprocessing executable 'smp-server' for simplexmq-6.0.2.0..
Building executable 'smp-server' for simplexmq-6.0.2.0..
[1 of 2] Compiling Main ( apps/xftp-server/Main.hs, /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/xftp-server/build/xftp-server/xftp-server-tmp/Main.o )
[1 of 4] Compiling Paths_simplexmq ( /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/smp-server/build/smp-server/autogen/Paths_simplexmq.hs, /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/smp-server/build/smp-server/smp-server-tmp/Paths_simplexmq.o )
[2 of 2] Compiling Paths_simplexmq ( /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/xftp-server/build/xftp-server/autogen/Paths_simplexmq.hs, /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/xftp-server/build/xftp-server/xftp-server-tmp/Paths_simplexmq.o )
[2 of 4] Compiling Static.Embedded ( apps/smp-server/web/Static/Embedded.hs, /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/smp-server/build/smp-server/smp-server-tmp/Static/Embedded.o )
[3 of 3] Linking /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/xftp-server/build/xftp-server/xftp-server
[3 of 4] Compiling Static ( apps/smp-server/web/Static.hs, /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/smp-server/build/smp-server/smp-server-tmp/Static.o )
[4 of 4] Compiling Main ( apps/smp-server/Main.hs, /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/smp-server/build/smp-server/smp-server-tmp/Main.o )
[5 of 5] Linking /root/simplex/simplexmq-6.0.2/dist-newstyle/build/x86_64-linux/ghc-9.6.3/simplexmq-6.0.2.0/x/smp-server/build/smp-server/smp-server
root@debian:~/simplex/simplexmq-6.0.2#
Result:
Failed to build basement-0.0.16.
Build log (
/root/.cache/cabal/logs/ghc-9.6.3/basement-0.0.16-6ecd345c05d76f9e94ec52388f34aca650684b98eb3b1903a18eebbe2da3309c.log
):
Configuring library for basement-0.0.16..
Preprocessing library for basement-0.0.16..
Building library for basement-0.0.16..
Basement/Error.hs:7:14: warning: [-Wdeprecated-flags]
-XTypeInType is deprecated: use -XDataKinds and -XPolyKinds instead
|
7 | {-# LANGUAGE TypeInType #-}
| ^^^^^^^^^^
[ 1 of 84] Compiling Basement.Compat.Bifunctor ( Basement/Compat/Bifunctor.hs, dist/build/Basement/Compat/Bifunctor.o, dist/build/Basement/Compat/Bifunctor.dyn_o )
[ 2 of 84] Compiling Basement.Compat.C.Types ( Basement/Compat/C/Types.hs, dist/build/Basement/Compat/C/Types.o, dist/build/Basement/Compat/C/Types.dyn_o )
[ 3 of 84] Compiling Basement.Compat.CallStack ( Basement/Compat/CallStack.hs, dist/build/Basement/Compat/CallStack.o, dist/build/Basement/Compat/CallStack.dyn_o )
[ 4 of 84] Compiling Basement.Compat.Identity ( Basement/Compat/Identity.hs, dist/build/Basement/Compat/Identity.o, dist/build/Basement/Compat/Identity.dyn_o )
[ 5 of 84] Compiling Basement.Compat.IsList ( Basement/Compat/IsList.hs, dist/build/Basement/Compat/IsList.o, dist/build/Basement/Compat/IsList.dyn_o )
[ 6 of 84] Compiling Basement.Compat.Natural ( Basement/Compat/Natural.hs, dist/build/Basement/Compat/Natural.o, dist/build/Basement/Compat/Natural.dyn_o )
[ 7 of 84] Compiling Basement.Compat.NumLiteral ( Basement/Compat/NumLiteral.hs, dist/build/Basement/Compat/NumLiteral.o, dist/build/Basement/Compat/NumLiteral.dyn_o )
[ 8 of 84] Compiling Basement.Compat.PrimTypes ( Basement/Compat/PrimTypes.hs, dist/build/Basement/Compat/PrimTypes.o, dist/build/Basement/Compat/PrimTypes.dyn_o )
[ 9 of 84] Compiling Basement.Compat.Primitive ( Basement/Compat/Primitive.hs, dist/build/Basement/Compat/Primitive.o, dist/build/Basement/Compat/Primitive.dyn_o )
[10 of 84] Compiling Basement.Compat.Semigroup ( Basement/Compat/Semigroup.hs, dist/build/Basement/Compat/Semigroup.o, dist/build/Basement/Compat/Semigroup.dyn_o )
[11 of 84] Compiling Basement.Compat.Typeable ( Basement/Compat/Typeable.hs, dist/build/Basement/Compat/Typeable.o, dist/build/Basement/Compat/Typeable.dyn_o )
[12 of 84] Compiling Basement.Compat.Base ( Basement/Compat/Base.hs, dist/build/Basement/Compat/Base.o, dist/build/Basement/Compat/Base.dyn_o )
[13 of 84] Compiling Basement.Compat.MonadTrans ( Basement/Compat/MonadTrans.hs, dist/build/Basement/Compat/MonadTrans.o, dist/build/Basement/Compat/MonadTrans.dyn_o )
[14 of 84] Compiling Basement.Compat.AMP ( Basement/Compat/AMP.hs, dist/build/Basement/Compat/AMP.o, dist/build/Basement/Compat/AMP.dyn_o )
[15 of 84] Compiling Basement.Endianness ( Basement/Endianness.hs, dist/build/Basement/Endianness.o, dist/build/Basement/Endianness.dyn_o )
[16 of 84] Compiling Basement.Floating ( Basement/Floating.hs, dist/build/Basement/Floating.o, dist/build/Basement/Floating.dyn_o )
[17 of 84] Compiling Basement.Monad ( Basement/Monad.hs, dist/build/Basement/Monad.o, dist/build/Basement/Monad.dyn_o )
Basement/Monad.hs:47:23: warning: [GHC-39567] [-Wstar-is-type]
Using ‘*’ (or its Unicode variant) to mean ‘Data.Kind.Type’
relies on the StarIsType extension, which will become
deprecated in the future.
Suggested fix: Use ‘Type’ from ‘Data.Kind’ instead.
|
47 | type PrimVar m :: * -> *
| ^
Basement/Monad.hs:47:28: warning: [GHC-39567] [-Wstar-is-type]
Using ‘*’ (or its Unicode variant) to mean ‘Data.Kind.Type’
relies on the StarIsType extension, which will become
deprecated in the future.
Suggested fix: Use ‘Type’ from ‘Data.Kind’ instead.
|
47 | type PrimVar m :: * -> *
| ^
[18 of 84] Compiling Basement.FinalPtr ( Basement/FinalPtr.hs, dist/build/Basement/FinalPtr.o, dist/build/Basement/FinalPtr.dyn_o )
[19 of 84] Compiling Basement.Numerical.Conversion ( Basement/Numerical/Conversion.hs, dist/build/Basement/Numerical/Conversion.o, dist/build/Basement/Numerical/Conversion.dyn_o )
Basement/Numerical/Conversion.hs:29:1: error:
Could not find module ‘GHC.IntWord64’
Use -v (or `:set -v` in ghci) to see a list of the files searched for.
|
29 | import GHC.IntWord64
| ^^^^^^^^^^^^^^^^^^^^
[20 of 84] Compiling Basement.Numerical.Number ( Basement/Numerical/Number.hs, dist/build/Basement/Numerical/Number.o, dist/build/Basement/Numerical/Number.dyn_o )
[22 of 84] Compiling Basement.Types.Char7 ( Basement/Types/Char7.hs, dist/build/Basement/Types/Char7.o, dist/build/Basement/Types/Char7.dyn_o )
[23 of 84] Compiling Basement.Base16 ( Basement/Base16.hs, dist/build/Basement/Base16.o, dist/build/Basement/Base16.dyn_o )
Error: cabal: Failed to build basement-0.0.16 (which is required by
exe:smp-server from simplexmq-6.0.2.0 and exe:xftp-server from
simplexmq-6.0.2.0). See the build log above for details.
root@debian:~/simplex/simplexmq-6.0.2# ghc --version
The Glorious Glasgow Haskell Compilation System, version 9.6.3
Search results seem to suggest Haskell's official support for i386 is impaired:
https://github.com/haskell-foundation/foundation/issues/565
https://github.com/haskell/bytestring/issues/484
https://gitlab.haskell.org/ghc/ghc/-/issues/20781#note_407377