08-05-2002
1 . At first , you should re-compile your prograem with -g option .
2 . run it , if it has produced a core file , you can use dbx(debugger) to find where does the programe coredump.
type the command "dbx programe-name core" and when you see "dbx>" prompt ,you type "where" command .In most case, you can see the stack
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Please help, I have tried to run this program countless times and still nothing. Please tell me what I'm doing wrong.
$ cat>test
count=1
while
do
echo "5"
read number
echo $5
let count=count+ 1
done
exit 0
^C$ ksh test
$ ^C
$ ksh test
$
$ nothing happend (6 Replies)
Discussion started by: ctiamaria
6 Replies
2. UNIX for Advanced & Expert Users
Can anyone tell the commands we use for debugging a programm in dbx with explanation for each?
Iam totally new to unix environment (3 Replies)
Discussion started by: bogarams
3 Replies
3. Shell Programming and Scripting
Hello all sorry didnt know where to post it
i compiled simple program that using "System.getProperty("user.dir");"
now i compiled the program under directory foo and and its running great when i do "java myapp"
i included this directory in the $PATH env variable so i could see it fro any where... (1 Reply)
Discussion started by: umen
1 Replies
4. UNIX for Dummies Questions & Answers
Hi,
I have a program in /opt/local/bin, my path in my .profile is
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
however when i type the program name it cannot find it, however i know the program is in /opt/local/bin?
Thanks (2 Replies)
Discussion started by: c19h28O2
2 Replies
5. Programming
I have made use of 'valgrind' and -finstrument-functions compiler option for debugging / analyzing code. Both the options lets us know the line / file being executed to some extent.
Is there a generic way that lets program dump the file:line it is getting executed dumped to a log file during... (3 Replies)
Discussion started by: uunniixx
3 Replies
6. UNIX for Dummies Questions & Answers
Hey, im editing the passwd file so that when the user ben logs in it runs my assign program.
I changed the last column from
to
Then when i log in i get...
There is no problem with the program because it runs fine when i open it normally.
Any help much appreciated. (8 Replies)
Discussion started by: RAFC_99
8 Replies
7. Programming
We have recently downloaded, installed and compiled gcc-3.0.4 code. gcc compiler has built successfully and we where able to compile some same test cpp file. I would like to know how we can modify gcc source code so that we add additional run time debugging statements like the binary in execution... (4 Replies)
Discussion started by: uunniixx
4 Replies
8. Shell Programming and Scripting
I have a bash script that launches another problem. I need to run that program under a certain user account. The script itself is run using 'sudo <scriptname>'.
#!/bin/bash
myprogram=...
exec "$myprogram"
How would this be done? (1 Reply)
Discussion started by: Carson Dyle
1 Replies
9. Programming
Subject: Debugging a program written in two languages
Platform: Linux (Kubuntu)
I am trying to debug a C application with bindings to some simple functions written in Ada using the GNAT Programming Studio IDE (GPS). The main entry point is in C. The debugger is gdb.
I managed to compile... (0 Replies)
Discussion started by: NiGHTS
0 Replies
10. Shell Programming and Scripting
have been trying for a few weeks not to get this program running. I am newer to programming and it has definitely been a challenge. I think my problem arises with my if statement. I can get it to append the name to the new file, but it simply appends the whole sequence to the file rather than... (3 Replies)
Discussion started by: haley6719
3 Replies
core(4) Kernel Interfaces Manual core(4)
NAME
core - Format of memory image file
SYNOPSIS
#include <sys/core.h>
DESCRIPTION
The system writes out a memory image of a terminated process when any of various errors occur. See sigaction(2) for the list of reasons;
the most common are memory violations, illegal instructions, bus errors, and user-generated quit signals. The memory image is called core
and is written in the process's working directory (provided that it can be; normal access controls apply).
The maximum size of a core file is limited. If a process exceeds this limit, any remaining data to be written to the core file is lost.
Default behavior is for the system to create a file named core, overwriting any other file with that name in the working directory.
You can enable enhanced core file naming, which causes the system to create unique names for core files. Core files are not overwritten,
thereby preventing loss of valuable debugging information when the same program fails mulitiple times (and perhaps for mulitple reasons).
When enhanced core file naming is enabled, the system produces core files with names in the following format:
core.program_name.host_name.numeric_tag The literal string core. Up to sixteen characters taken from the program name as shown by the ps
command. The first portion of the system's network host name, or up to 16 characters of the host name, taken from the part of the host
name that precedes the first dot. This tag is assigned to the core file to make it unique among all of the core files generated by a pro-
gram on a host. The maximum value for this tag, and thus the maximum number of core files for this program and host, is set by a system
configuration parameter.
Note the tag is not a literal version number. The system selects the first available unique tag for the core file. For example, if a
program's core files have tags .0, .1, and .3, the system uses tag .2 for the next core file it creates for that program. If the
system-configured limit for core file instances is reached, the system will not create any more core files for that program/host
combination. By default, the system can create up to 16 versions of a core file.
For example, the fourth core file generated on host buggy.net.ooze.com by the program dropsy would be: core.dropsy.buggy.3
Enhanced core file naming can be enabled at the system level or the program level: At the system level, you can enable enhanced core file
naming by setting the enhanced-core-name system configuration variable to 1 in the proc subsystem: proc:
enhanced-core-name = 1 At the program level, you can enable enhanced core file naming by calling the uswitch system call with the
USW_CORE flag set. See the EXAMPLE section.
The system manager can limit the number of unique core file versions that a program can create on a specific host system by setting the
system configuration variable enhanced-core-max-versions to the desired value: proc:
enhanced-core-name = 1
enhanced-core-max-versions = 8 The miminum value is 1, the maximum is 99,999, and the default is 16.
EXAMPLE
The following example shows a code fragment that calls the uswitch system call with the USW_CORE flag set: #include <signal.h> #include
<sys/uswitch.h>
/*
* Request enhanced core file naming for
* this process then create a core file.
*/ main() {
long uval = uswitch(USC_GET, 0);
uval = uswitch(USC_SET, uval | USW_CORE);
if (uval < 0) {
perror("uswitch");
exit(1);
}
raise(SIGQUIT); }
In general, the debugger dbx(1) is sufficient to deal with core images.
RELATED INFORMATION
sigaction(2), uswitch(2), sysconfigdb(8), dbx(1) delim off
core(4)