Skip to content

--disable-large-address-space is broken in current master

When --disable-large-address-space is passed to ./configure, the current master (eb60ec18) branch would fail to build with the error message below:

Command line: _build/stage0/bin/ghc -Wall -Wcompat -hisuf dyn_hi -osuf dyn_o -hcsuf dyn_hc -fPIC -dynamic -hide-all-packages -no-user-package-db '-package-env -' '-package-db _build/stage1/lib/package.conf.d' '-this-unit-id runghc-9.7.20230512-inplace' '-package-id base-4.18.0.0-inplace' '-package-id directory-1.3.8.1-inplace' '-package-id filepath-1.4.100.1-inplace' '-package-id process-1.6.17.0-inplace' '-package-id unix-2.8.1.0-inplace' -i -i/tmp/ghc-temp/_build/stage1/utils/runghc/build -i/tmp/ghc-temp/_build/stage1/utils/runghc/build/runghc/autogen -i/tmp/ghc-temp/utils/runghc -Irts/include -I_build/stage1/utils/runghc/build -I/tmp/ghc-temp/libraries/process/include -I/tmp/ghc-temp/_build/stage1/libraries/process/build/include -I/tmp/ghc-temp/libraries/directory -I/tmp/ghc-temp/_build/stage1/libraries/directory/build -I/tmp/ghc-temp/libraries/unix/include -I/tmp/ghc-temp/_build/stage1/libraries/unix/build/include -I/tmp/ghc-temp/libraries/time/lib/include -I/tmp/ghc-temp/_build/stage1/libraries/time/build/lib/include -I/tmp/ghc-temp/libraries/bytestring/include -I/tmp/ghc-temp/_build/stage1/libraries/bytestring/build/include -I/tmp/ghc-temp/libraries/base/include -I/tmp/ghc-temp/_build/stage1/libraries/base/build/include -I/tmp/ghc-temp/libraries/ghc-bignum/include/ -I/tmp/ghc-temp/_build/stage1/libraries/ghc-bignum/build/include/ -I/tmp/ghc-temp/rts/include -I/tmp/ghc-temp/_build/stage1/rts/build/include -optP-include -optP_build/stage1/utils/runghc/build/runghc/autogen/cabal_macros.h -outputdir _build/stage1/utils/runghc/build -fdiagnostics-color=always -XHaskell2010 -no-global-package-db -package-db=/tmp/ghc-temp/_build/stage1/inplace/package.conf.d -ghcversion-file=rts/include/ghcversion.h -ghcversion-file=rts/include/ghcversion.h -dynamic -optl-Wl,-rpath,$ORIGIN/../lib/x86_64-linux-ghc-9.7.20230512 -optl-Wl,-rpath,$ORIGIN/../../../lib/x86_64-linux-ghc-9.7.20230512 -optl-Wl,-zorigin -fno-use-rpaths -no-auto-link-packages -rtsopts -Wnoncanonical-monad-instances -optc-Wno-error=inline -optP-Wno-nonportable-include-path _build/stage1/utils/runghc/build/Main.dyn_o -o _build/stage1/bin/runghc -O0 -H64m
===> Command failed with error code: 1
ld.lld: error: undefined reference due to --no-allow-shlib-undefined: ACQUIRE_ALLOC_BLOCK_SPIN_LOCK
>>> referenced by /tmp/ghc-temp/_build/stage1/inplace/../rts/build/libHSrts-1.0.2-ghc9.7.20230512.so

ld.lld: error: undefined reference due to --no-allow-shlib-undefined: RELEASE_ALLOC_BLOCK_SPIN_LOCK
>>> referenced by /tmp/ghc-temp/_build/stage1/inplace/../rts/build/libHSrts-1.0.2-ghc9.7.20230512.so
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
Command failed
Build failed.

It's likely that the ACQUIRE_ALLOC_BLOCK_SPIN_LOCK/RELEASE_ALLOC_BLOCK_SPIN_LOCK macros somehow wasn't properly expanded, though why that's the case needs some further analysis.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information