D.gnu - [Bug 155] New: Executable size 9.3MB
- via D.gnu (72/72) Aug 28 2014 Date: Thu, 28 Aug 2014 13:36:05 +0100
Date: Thu, 28 Aug 2014 13:36:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" http://bugzilla.gdcproject.org/show_bug.cgi?id=155 Bug ID: 155 Summary: Executable size 9.3MB Product: GDC Version: 4.9.x Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: Normal Component: gdc Assignee: ibuclaw gdcproject.org Reporter: dbugreporter gmail.com GDC 4.9.0 gives me 9.3 megabyte executable for this: import std.stdio; void main() { writeln("hello"); } If I strip it, size goes to 1.6 megabytes which still seems large. $ ld --version GNU ld (GNU Binutils for Ubuntu) 2.23.52.20130913 Copyright 2013 Free Software Foundation, Inc. $ objdump -h hello | egrep -v 'CONTENTS|ALLOC' hello: file format elf64-x86-64 Sections: Idx Name Size VMA LMA File off Algn 0 .interp 0000001c 0000000000400238 0000000000400238 00000238 2**0 1 .note.ABI-tag 00000020 0000000000400254 0000000000400254 00000254 2**2 2 .hash 00000648 0000000000400278 0000000000400278 00000278 2**3 3 .dynsym 00001308 00000000004008c0 00000000004008c0 000008c0 2**3 4 .dynstr 00000914 0000000000401bc8 0000000000401bc8 00001bc8 2**0 5 .gnu.version 00000196 00000000004024dc 00000000004024dc 000024dc 2**1 6 .gnu.version_r 000000d0 0000000000402678 0000000000402678 00002678 2**3 7 .rela.dyn 000000c0 0000000000402748 0000000000402748 00002748 2**3 8 .rela.plt 000011a0 0000000000402808 0000000000402808 00002808 2**3 9 .init 0000001a 00000000004039a8 00000000004039a8 000039a8 2**2 10 .plt 00000bd0 00000000004039d0 00000000004039d0 000039d0 2**4 11 .text 000b1d60 00000000004045a0 00000000004045a0 000045a0 2**4 12 .fini 00000009 00000000004b6300 00000000004b6300 000b6300 2**2 13 .rodata 00023c42 00000000004b6340 00000000004b6340 000b6340 2**6 14 .eh_frame_hdr 0000b27c 00000000004d9f84 00000000004d9f84 000d9f84 2**2 15 .eh_frame 0003466c 00000000004e5200 00000000004e5200 000e5200 2**3 16 .gcc_except_table 00001260 000000000051986c 000000000051986c 0011986c 2**2 17 .tdata 00000008 000000000071b000 000000000071b000 0011b000 2**3 18 .tbss 000004e0 000000000071b008 000000000071b008 0011b008 2**3 19 .init_array 000002f8 000000000071b008 000000000071b008 0011b008 2**3 20 .fini_array 00000008 000000000071b300 000000000071b300 0011b300 2**3 21 .jcr 00000008 000000000071b308 000000000071b308 0011b308 2**3 22 .data.rel.ro 00000028 000000000071b310 000000000071b310 0011b310 2**4 23 .dynamic 00000210 000000000071b338 000000000071b338 0011b338 2**3 24 .got 00000008 000000000071b548 000000000071b548 0011b548 2**3 25 .got.plt 000005f8 000000000071b550 000000000071b550 0011b550 2**3 26 .data 0006f574 000000000071bb80 000000000071bb80 0011bb80 2**6 27 .bss 00000558 000000000078b100 000000000078b100 0018b0f4 2**6 28 .comment 0000007b 0000000000000000 0000000000000000 0018b0f4 2**0 29 .debug_aranges 000124f0 0000000000000000 0000000000000000 0018b16f 2**0 30 .debug_info 00247eee 0000000000000000 0000000000000000 0019d65f 2**0 31 .debug_abbrev 0001b61b 0000000000000000 0000000000000000 003e554d 2**0 32 .debug_line 0006445a 0000000000000000 0000000000000000 00400b68 2**0 33 .debug_str 000e076a 0000000000000000 0000000000000000 00464fc2 2**0 34 .debug_loc 0024f29e 0000000000000000 0000000000000000 0054572c 2**0 35 .debug_ranges 000abdf0 0000000000000000 0000000000000000 007949ca 2**0 Most of the size comes from those debug sections. Even if I use the -frelease option with gdc, the debug sections will still be there. If I strip the binary they go away. -- You are receiving this mail because: You are watching all bug changes.
Aug 28 2014