1
votes

I have installed haskell stack and I'm trying to setup ghc for the same. stack version is

 stack --version
 Version 1.5.1, Git revision 600c1f01435a10d127938709556c1682ecfd694e (4861 commits) x86_64 hpack-0.17.1

I have updated the ~/.stack/global-project/stack.yaml as below

# This is the implicit global project's config file, which is only used when
# 'stack' is run outside of a real project.  Settings here do _not_ act as
# defaults for all projects.  To change stack's default settings, edit
# '/home/rajkumar/.stack/config.yaml' instead.
#
# For more information about stack's configuration, see
# http://docs.haskellstack.org/en/stable/yaml_configuration/
#
flags: {}
extra-package-dbs: []
packages: []
extra-deps: []
resolver: ghc-8.2.1

Then I run stack setup command and got the below error -

> stack setup
The GHC located at /home/user/.stack/programs/x86_64-linux/ghc-tinfo6-8.2.1/bin/ghc failed to compile a sanity check. Please see:

http://docs.haskellstack.org/en/stable/install_and_upgrade/

for more information. Exception was:
Running /home/user/.stack/programs/x86_64-linux/ghc-tinfo6-8.2.1/bin/ghc /tmp/stack-sanity-check6389/Main.hs -no-user-package-db in directory /tmp/stack-sanity-check6389/ exited with ExitFailure 1

[1 of 1] Compiling Main             ( /tmp/stack-sanity-check6389/Main.hs, /tmp/stack-sanity-check6389/Main.o )
Linking /tmp/stack-sanity-check6389/Main ...

/usr/bin/ld.bfd: cannot find -lgmp
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)

How can I resolve this issue?

1
How was stack installed? If installed via docs.haskellstack.org/en/stable/README , it should install libgmp. Not sure how to install things on opensuse, but install libgmp and it should work. Note I just figured this out by searching the stack issue tracker.. github.com/commercialhaskell/stack/issues/3069 via github.com/commercialhaskell/stack/…mgsloan
mgsloan - I have installed using command curl -sSL https://get.haskellstack.org/ | sh. I followed this doc docs.haskellstack.org/en/stable/README/#how-to-installRajkumar Natarajan

1 Answers

0
votes

I am able to resolve this error.

Verify gmp is installed already on opensuse linux using the below command.

sudo ldconfig -p | grep libgmp
libgmp.so.10 (libc6,x86-64) => /usr/lib64/libgmp.so.10

If not present install it using below command

sudo zypper install libgmp10

create link for the lib file in the same folder. Example

sudo ln /usr/lib64/libgmp.so.10 /usr/lib64/libgmp.so

Hope this helps for someone.