[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#51928: GHC 8.10 occupies 1.6 GiB
From: |
Maxim Cournoyer |
Subject: |
bug#51928: GHC 8.10 occupies 1.6 GiB |
Date: |
Fri, 26 Nov 2021 22:19:58 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hello,
raingloom <raingloom@riseup.net> writes:
> On Wed, 17 Nov 2021 22:15:28 +0100
> Ludovic Courtès <ludo@gnu.org> wrote:
>
>> Hi!
>>
>> GHC takes way too much space (GHC itself, not the closure):
>>
>> --8<---------------cut here---------------start------------->8---
>> $ guix size ghc@8.10
>> konserveja ero
>> total self /gnu/store/allyyvs2xg396s23csrmqfx19n9zayp7-ghc-8.10.7
>> 1831.0 1599.4 87.3%
>> /gnu/store/z9alkwg8anajvasd01pyx4rzcasli3yf-ghc-8.10.7-doc
>> 190.2 150.8 8.2%
>> /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31
>> 38.4 36.7 2.0%
>> /gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib
>> 71.0 32.6 1.8%
>> /gnu/store/zzkly5rbfvahwqgcs7crz0ilpi7x5g5p-ncurses-6.2
>> 76.9 5.9 0.3%
>> /gnu/store/35afkywncrr5xsb4cxcljf6rpjcb7f61-gmp-6.2.0
>> 73.8 2.7 0.2%
>> /gnu/store/mmhimfwmmidf09jw1plw3aw1g1zn2nkh-bash-static-5.0.16
>> 1.6 1.6 0.1%
>> /gnu/store/pwcp239kjf7lnj5i4lkdzcfcxwcfyk72-bash-minimal-5.0.16
>> 39.4 1.0 0.1%
>> /gnu/store/bw15z9kh9c65ycc2vbhl2izwfwfva7p1-libffi-3.3
>> 71.2 0.2 0.0% total: 1831.0 MiB $ guix describe Generacio
>> 194 Nov 07 2021 23:40:30 (nuna) guix bd41e59 repository
>> URL: https://git.savannah.gnu.org/git/guix.git branch: master commit:
>> bd41e590dd24e54797fb8b6854c244efd4d12df5 --8<---------------cut
>> here---------------end--------------->8---
>>
>> Most of it comes from $libdir, specifically:
>>
>> --8<---------------cut here---------------start------------->8---
>> $ du -s
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/*|sort
>> -k1 -n| tail 23756
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/haskeline-0.8.2
>> 28776
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/text-1.2.4.1
>> 47664
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/containers-0.6.5.1
>> 48428
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-prim-0.6.1
>> 50768
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghci-8.10.7
>> 54100
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/template-haskell-2.16.0.0
>> 80200
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/bin
>> 151868
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/base-4.14.3.0
>> 426416
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/Cabal-3.2.1.0
>> 538168
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7
>> $ du -s
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/*|sort
>> -k1 -n|tail 652
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/Llvm
>> 716
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/SPARC
>> 1108
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/RegAlloc
>> 2256
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/DynFlags.dyn_hi
>> 2256
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/DynFlags.hi
>> 2256
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/DynFlags.p_hi
>> 23724
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/GHC
>> 90908
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/libHSghc-8.10.7-ghc8.10.7.so
>> 127908
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/libHSghc-8.10.7.a
>> 225972
>> /gnu/store/ifr4svr31053fgqay0il5acipl7b6579-ghc-8.10.7/lib/ghc-8.10.7/ghc-8.10.7/libHSghc-8.10.7_p.a
>> --8<---------------cut here---------------end--------------->8---
>>
>> Can we at least (re)move those ‘.a’ files?
>>
>> Thoughts?
>>
>> Ludo’.
>>
>>
>>
>
> Shouldn't `.a` be split to a static lib output?
In Guix they aren't used typically (everything gets linked dynamically);
at 1 GiB+ I think it's fair to get rid of them.
Thanks,
Maxim