[GHC] #9087: Executables in the Linux binaries are not stripped (was: Executables in the 7.8.2 Linux i386 binary tarball are not stripped)
GHC
ghc-devs at haskell.org
Sun Nov 9 18:33:28 UTC 2014
#9087: Executables in the Linux binaries are not stripped
-----------------------------------+------------------------------------
Reporter: refold | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.8.2
Resolution: | Keywords:
Operating System: Linux | Architecture: Unknown/Multiple
Type of failure: Other | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Revisions: |
-----------------------------------+------------------------------------
Changes (by thomie):
* architecture: x86 => Unknown/Multiple
Old description:
> At least on i386 Linux, the executables inside the GHC binary tarball
> seem to come with debug information. Stripping it noticeably reduces the
> binary sizes:
>
> {{{
> $ file /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
> /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc: ELF 32-bit LSB executable,
> Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for
> GNU/Linux 2.6.26,
> BuildID[sha1]=0x6012a4c86cd3f410ca0e59ab4ac872ce740d03c6, not stripped
>
> $ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
> 1,4M /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
>
> $ strip -s /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
>
> $ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
> 1021K /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
>
> $ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
> 3,2M /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
>
> $ strip -s /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
>
> $ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
> 2,3M /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
> }}}
>
> Do we really need to include the debug info for exes?
New description:
The executables inside the GHC binary tarball seem to come with debug
information. Stripping it noticeably reduces the binary sizes:
{{{
$ file /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
/path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc: ELF 32-bit LSB executable, Intel
80386, version 1 (SYSV), dynamically linked (uses shared libs), for
GNU/Linux 2.6.26,
BuildID[sha1]=0x6012a4c86cd3f410ca0e59ab4ac872ce740d03c6, not stripped
$ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
1,4M /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
$ strip -s /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
$ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
1021K /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/ghc
$ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
3,2M /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
$ strip -s /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
$ du -sh /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
2,3M /path/to/ghc-7.8.2/lib/ghc-7.8.2/bin/haddock
}}}
Do we really need to include the debug info for exes?
--
Comment:
The binaries from https://launchpad.net/~hvr/+archive/ubuntu/ghc are
stripped however.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9087#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list