comp.lang.ada
 help / color / mirror / Atom feed
From: "Steve" <nospam_steved94@attbi.com>
Subject: Re: It's been a while...
Date: Fri, 30 May 2003 02:13:13 GMT
Date: 2003-05-30T02:13:13+00:00	[thread overview]
Message-ID: <Z6zBa.792108$Zo.164088@sccrnsc03> (raw)
In-Reply-To: pan.2003.05.29.21.18.46.518854@__n_o_s_p_a_m__abyss2.demon.co.uk______

You might try adding: pragma Discard_Names to your source.

If you haven't already checked, look for settings in the GNAT User's Guide
and the GNAT Reference Manual for hints on how to reduce the size of the
executable.

It also looks like full exception traceback information is included.  You
can probably turn that off as well (if you really want to).

Steve
(The Duck)

"Luke A. Guest" <laguest@__n_o_s_p_a_m__abyss2.demon.co.uk______> wrote in
message
news:pan.2003.05.29.21.18.46.518854@__n_o_s_p_a_m__abyss2.demon.co.uk______.
..
> Hi,
>
> I learned Ada at University around 1995 and I've been interested in
> getting back into it. Now, I have a simple "hello" app and it is huge.
> Now, I don't want to have a load of people telling me not to judge Ada on
> the size, but I really want to know how to get the app size down. The app
> is:
>
> -rwxr-xr-x    1 laguest  users      200492 2003-05-29 22:16 hello
>
> This is an example program from the sources, compiled with:
>
> gnatmake -O3
>
> and Ihave used "strip" to get rid of the debug symbols, and the app size
> is:
>
> -rwxr-xr-x    1 laguest  users       73292 2003-05-29 22:17 hello
>
> but, if I do this:
>
> strings hello, I get the following:
>
> /lib/ld-linux.so.2
> libc.so.6
> strcpy
> waitpid
> stdout
> utime
> ungetc
> sigemptyset
> getenv
> getpid
> memcpy
> setvbuf
> readlink
> feof
> malloc
> isatty
> __frame_state_for
> readdir
> fflush
> putenv
> abort
> fprintf
> strcat
> __deregister_frame_info
> fseek
> stdin
> mktime
> ferror
> strstr
> strncpy
> unlink
> realloc
> _IO_getc
> fork
> execv
> sigaction
> fread
> symlink
> localtime
> memset
> clearerr
> getppid
> tcgetattr
> ttyname
> getcwd
> fgetc
> sprintf
> fclose
> scanf
> stderr
> mkstemp
> fputc
> localtime_r
> fwrite
> __xstat
> rewind
> freopen
> __fxstat
> fopen
> atoi
> _IO_putc
> fileno
> _IO_stdin_used
> _exit
> gmtime
> __libc_start_main
> __register_frame_info_table
> tcsetattr
> __register_frame_info
> free
> __gnat_handler_installed
> __gl_wc_encoding
> __dummy
> program_error
> __gl_unreserve_all_interrupts
> gnat_argc
> gnat_envp
> __gl_exception_tracebacks
> __gl_restrictions
> __gl_main_priority
> __gl_locking_policy
> __gl_task_dispatching_policy
> system__soft_links__get_machine_state_addr
> max_path_len
> gnat_argv
> __gl_zero_cost_exceptions
> __gl_queuing_policy
> __gl_time_slice_val
> gnat_exit_status
> constraint_error
> storage_error
> __gmon_start__
> GLIBC_2.1
> GLIBC_2.0
> PTRh
> j j j jbj
> (WVS
>         ~&V
> gfff
> gfff
> 8C9M
> \WVS
> (WVS
> 0WVS
> PRQh
> PRQh
> PRQh
> PRQS
> TWVS
> gfff
> gfff
> \WVS
> $WVS
> 8_t5
> 8_u;
> j;h8z
> t!VS
> t_WV
> t*WS
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPh<
> RPht
> RPhL
> RPh<
> RPht
> RPhL
> RPh<
> RPht
> RPhL
> RPh<
> RPht
> RPhL
> RPh<
> RPht
> RPhL
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPht
> 9C0~
> RPh<
> RPht
> 9P0~
> RPh<
> RPht
> t29u
> RPh<
> RPht
> 9G,~
> G,PVW
> RPht
> RPht
> 9s0~
> 9s0|
> RPhL
> RPh<
> RPht
> RPh<
> RPht
> 9s,tiS
> 9s,~    S
> 9s,}%
> 9s,|
> 9s,u
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPht
> RPh<
> RPht
> RPhL
> RPh<
> RPht
> RPhL
> RPht
> t!VS
> t_WV
> t*WS
> $WVS
> WVSj
> jGh(}
> RPh<
> RPh<
> RPht
> RPh<
> RPht
>  WVS
> RPh<
> RPh<
> RPhL
> j8PR
> RPh<
> RPh<
> RPh<
> RPht
> RPh<
> RPht
>  WVS
> jzhd
>  WVS
> $hd
>  WVS
>  WVS
> $h|1
> $hl5
> j.h%
> j7h%
> j@h%
> <Pu$
> TWVS
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> RPhL
> 4WVS
> WVSf
> ,WVS
>  WVS
> PRQS
> Pj/V
> 80t-@80t(@80t#@
> 80t-@80t(@80t#@
> 80t-@80t(@80t#@
> 80t-@80t(@80t#@
> 8(t-@8(t(@8(t#@
> 8"t+B8"t&B8"t!B
> BB+U
> 8(t-@8(t(@8(t#@
> t}</u
> 80t-@80t(@80t#@
> 80t-@80t(@80t#@
> 8*t-B8*t(B8*t#B
> BB+U
> <:t
> 80t-@80t(@80t#@
> 8"t+B8"t&B8"t!B
> 80t-@80t(@80t#@
> 81t-A81t(A81t#A
> 8(t-@8(t(@8(t#@
> 81t-A81t(A81t#A
> 8(t-@8(t(@8(t#@
> ?/t<
> PRQV
> PRQV
> tD9U
> t%VWG
> 8&t+F8&t&F8&t!F
> _ada_hello
> nnvvnnnvnnnnnvvvvvvnvvvnvnnvnnnvnvvnnnnnnvvvnnnnvvnn
> hello
> access check failed
> access parameter is null
> discriminant check failed
> divide by zero
> explicit raise
> index check failed
> invalid data
> length check failed
> overflow check failed
> partition check failed
> range check failed
> tag check failed
> access before elaboration
> accessibility check failed
> all guards closed
> finalize raised exception
> misaligned address value
> missing return
> potentially blocking operation
> stubbed subprogram called
> unchecked union restriction
> empty storage pool
> infinite recursion
> object too large
> restriction violation
>
URC_NO_REASONURC_FOREIGN_EXCEPTION_CAUGHTURC_PHASE2_ERRORURC_PHASE1_ERRORURC
_NORMAL_STOPURC_END_OF_STACKURC_HANDLER_FOUNDURC_INSTALL_CONTEXTURC_CONTINUE
_UNWIND
> 0123456789abcdefException name:
> Message:
> PID:
> Call stack traceback locations:
> a-except.adb
> bad exception occurrence in stream input
> PID:Exception raised
> Execution terminated by abort of environment task
> raised
> Execution terminated by unhandled exception
> a-finali.ads
> FALSETRUE
> unknown tagged type:
> @IN_FILEOUT_FILEAPPEND_FILE
> LOWER_CASEUPPER_CASE
> a-textio.ads
> s-fileio.adb:166
>
s-fileio.adb:168s-fileio.adb:477s-fileio.adb:179s-fileio.adb:181s-fileio.adb
:639a-textio.adb:396a-textio.adb:449a-textio.adb:501a-textio.adb:503a-textio
.adb:553a-textio.adb:556a-textio.adb:617a-textio.adb:712a-textio.adb
> a-textio.adb:896a-textio.adb:901a-textio.adb:983a-textio.adb:1000
>
a-textio.adb:1110a-textio.adb:1130a-textio.adb:1188a-textio.adb:1211a-textio
.adb:1265a-textio.adb:1281a-textio.adb:1353a-textio.adb:1472a-textio.adb:155
9a-textio.adb:1664a-textio.adb:1707a-textio.adb:1725a-textio.adb:1732a-texti
o.adb:1741
> %IN_FILEINOUT_FILEOUT_FILEAPPEND_FILE
> %YESNONONE
> s-fileio.adb
> s-fileio.adb:122
>
s-fileio.adb:155s-fileio.adb:166s-fileio.adb:168s-fileio.adb:179s-fileio.adb
:181s-fileio.adb:271s-fileio.adb:284s-fileio.adb:298s-fileio.adb:374s-fileio
.adb:477s-fileio.adb:508s-fileio.adb:536s-fileio.adb:542s-fileio.adb:639s-fi
leio.adb:652s-fileio.adb:709shared
>
yesnos-fileio.adb:743s-fileio.adb:763s-fileio.adb:769s-fileio.adb:798s-filei
o.adb:828s-fileio.adb:869s-fileio.adb:889s-fileio.adb:891s-fileio.adb:934s-f
ileio.adb:937s-fileio.adb:940s-fileio.adb:955s-fileio.adb:989s-fileio.adb:10
12
> s-fileio.adb:1037
> s-finimp.ads
> s-stratt.adb:458
>
s-stratt.adb:440s-stratt.adb:422s-stratt.adb:404s-stratt.adb:386s-stratt.adb
:368s-stratt.adb:350s-stratt.adb:332s-stratt.adb:314s-stratt.adb:296s-stratt
.adb:278s-stratt.adb:260s-stratt.adb:242s-stratt.adb:224s-stratt.adb:206s-st
ratt.adb:188s-stratt.adb:170s-stratt.adb:152s-stratt.adb:134s-finimp.adb
>  raised during finalization
> exception
> s-finroo.ads
> s-finroo.adb
> EAXECXEDXEBXESPEBPESIEDI
> UWORDBYTE
>         CONSTRAINT_ERROR
> PROGRAM_ERROR
> STORAGE_ERROR
> TASKING_ERROR
> _ABORT_SIGNAL
> NUMERIC_ERROR
> RM_CONVENTIONEVERY_RAISEUNHANDLED_RAISE
> s-stratt.adb:134
> s-stratt.adb:152
>
s-stratt.adb:170s-stratt.adb:188s-stratt.adb:206s-stratt.adb:224s-stratt.adb
:242s-stratt.adb:260
>
s-stratt.adb:278s-stratt.adb:296s-stratt.adb:314s-stratt.adb:332s-stratt.adb
:350s-stratt.adb:368s-stratt.adb:386s-stratt.adb:404s-stratt.adb:422s-stratt
.adb:440s-stratt.adb:458main_task
> object too large
> heap exhausted
> lib*.a
> %s%c%s
> %s-%d-%d
> GNAT-XXXXXX
> TMPDIR
> /tmp/gnat-XXXXXX
> %s/gnat-XXXXXX
> %s=%s
> PATH
> a-init.c
> SIGSEGV
> stack overflow (or erroneous memory access)
> SIGBUS
> SIGFPE
> unhandled signal
> GNAT_STACK_LIMIT
> s-stache.adb:172
> stack overflow detected
> GNAT Version: 3.15p  (20020523)_ada_hello
> q#*a
> ^X7,
> {_      uD{
> divide by zero
> explicit raise
> invalid data
> explicit raise
> invalid data
> missing return
> explicit raise
> ADA.FINALIZATION.LIST_CONTROLLER.SIMPLE_LIST_CONTROLLER
> ADA.FINALIZATION.LIST_CONTROLLER.LIST_CONTROLLER
> ADA.FINALIZATION.CONTROLLED
> ADA.FINALIZATION.LIMITED_CONTROLLED
> ADA.IO_EXCEPTIONS.STATUS_ERROR
> ADA.IO_EXCEPTIONS.MODE_ERROR
> ADA.IO_EXCEPTIONS.NAME_ERROR
> ADA.IO_EXCEPTIONS.USE_ERROR
> ADA.IO_EXCEPTIONS.DEVICE_ERROR
> ADA.IO_EXCEPTIONS.END_ERROR
> ADA.IO_EXCEPTIONS.DATA_ERROR
> ADA.IO_EXCEPTIONS.LAYOUT_ERROR
> ADA.STREAMS.ROOT_STREAM_TYPE
> ADA.TAGS.TAG_ERROR
> FALSETRUE
> ADA.TEXT_IO.TEXT_AFCB
> *stderr
> *stdin
> *stdout
> %YESNONONE
> SYSTEM.FILE_CONTROL_BLOCK.AFCB
> SYSTEM.FILE_IO.FILE_IO_CLEAN_UP_TYPE
> SYSTEM.FINALIZATION_IMPLEMENTATION.LIMITED_RECORD_CONTROLLER
> SYSTEM.FINALIZATION_IMPLEMENTATION.RECORD_CONTROLLER
> SYSTEM.FINALIZATION_ROOT.EMPTY_ROOT_CONTROLLED
> SYSTEM.FINALIZATION_ROOT.ROOT_CONTROLLED
> PROGRAM_ERROR
> STORAGE_ERROR
> TASKING_ERROR
> _ABORT_SIGNAL
> NUMERIC_ERROR
> n
> G. A.$B.(H.
>
> Now, surely the app doesn't need this info and it must be taking up a lot
> of space. Do I need to go into the linker scripts to strip this info out?
>
> Thanks,
> Luke.
>
>
>





  parent reply	other threads:[~2003-05-30  2:13 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-29 21:18 It's been a while Luke A. Guest
2003-05-29 21:27 ` Martin Dowie
2003-05-29 22:19   ` Luke A. Guest
2003-05-30  7:43     ` Martin Dowie
2003-05-29 22:22   ` Luke A. Guest
2003-05-30  2:13 ` Steve [this message]
2003-05-30  2:54   ` Wesley Groleau
2003-05-30  4:52 ` Re; " tmoran
2003-05-30 10:04   ` Georg Bauhaus
2003-05-30  9:03 ` Preben Randhol
2003-05-30  9:27 ` Gautier
2003-05-30 19:45 ` Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox