First off - writing a shell is essentially pointless unless this is a school assignment. We have a homework forum.
Next, consider that you can use a debugger to find the source line for your problem. Since you already made an effort to show your code, here is a little help --- recompile with -g, run your code, watch it puke, then use the debugger to read the core file.
gcc example:
Code:
gcc -g -o myshell myshell.c
next, after it segfaults:
Code:
gdb myshell core
appworx> gdb myshell core
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.9"...
Core was generated by `./myshell '.
Program terminated with signal 11, Segmentation fault.
#0 0x00000000 in ?? ()
(gdb) ba
#0 0x00000000 in ?? ()
#1 0x000111f8 in dt_arithmetic (fmt=0xffbfedf0 "+%s", d_value=0, sec=0, chg_tim=0) at add_time.c:150
#2 0x00011710 in process (p=0xffbff23e "0", ptr=0, fmtptr=0xffbfedf0 "+%s") at add_time.c:242
#3 0x0001191c in main (argc=4, argv=0xffbff064) at add_time.c:272
(gdb)
the ba (backtrace command) will show the last line of code in your C program before the problem ocurred.
I am trying to build a tuxedo server which in turn depends on several Pro*C programs. I am doing it on HP-UX system.
It looks to me that the ORACLE_HOME is set properly.
But I am getting error message when trying to build.
PCC-F-NOERRFILE, unable to open error message file, facility PR2
exit... (1 Reply)
hi all...
ive been trying this program where i spawn 4 threads... and i am trying to use message queue to send msgs from 3 of the threads to the parent thread... but it doent seem to be working... ive almost pulled out my hair tryin to fix the prob :confused:
another wierd thing... (1 Reply)
Hi all,
i have a log file that captures success or failure messges when i run a daily job.
here is a sample of my log.
20060312 start
successful
successful
failure
failure
20060312 end
i need to write a subroutine that opens up the log daily after my job completes to examine the log... (2 Replies)
I am using the "find" command below and it respond with the error message " find: cannot open /: Stale NFS file handle"
what does it mean?
what can I do about it?
Need advice, thanks.
below are the command that I enter, the respond and the error message:
root@ScripServer:/# find / -name... (1 Reply)
Hi,
I was compiling few C programs in the unix server and getting the following error message
rm: /home/a0xxx28/AVT/SEEDLIBRARYDB/LIB/*.a non-existent
proc MODE=ANSI CODE=ANSI_C INCLUDE=/home/a0xxx28/PVT/SEEDLIBRARYDB/INCLUDE
INCLUDE=/home/a0xxx28/PVT/SEEDLIBRARY/INCLUDE ... (1 Reply)
Hello guys,
Thanks for all your precious tips.
I hope you can give me some advice again.
This time I am having an issue with a SUN FIRE V240 (SOLARIS 10).
The server doesn't boot, normally , first we had a file system error
====================+FIRST ERROR... (6 Replies)
Basically, I want to copy all files (F03*) in this directory and merge/paste them into a new file (called SMER_2.03.12.SPU), yet the error message is "no such file or directory." I listed what is in my working directory, and the files do exist, so I'm not sure what's going on. The code's at the... (8 Replies)
I wrote a perl program that simultaneously reads in data from 691 tar.gz files using zcat. I can run one instance of the program without any issues and the memory and swap sizes are negligible. However, when I attempt to run more than 1 I start to get fork: resource unavailable messages. Are... (6 Replies)
Hi,
I am trying to open small size file only in vi editor on solaris or Linux machine
but it giving message "Terminal too wide" and then I have to come out.
As shown below:-
-rwxr-x--- 1 rkycadm rkycprd 2445 Sep 12 04:06
$ vi file.txt
Terminal too wide
:q!
----------... (2 Replies)
Discussion started by: RahulJoshi
2 Replies
LEARN ABOUT HPUX
elf_errmsg
elf_error(3E)elf_error(3E)NAME
elf_errmsg, elf_errno - error handling
SYNOPSIS
[flag... ] file... [library] ...
DESCRIPTION
If an ELF library function fails, a program may call to retrieve the library's internal error number. As a side effect, this function
resets the internal error number to zero, which indicates no error.
takes an error number, err, and returns a null-terminated error message (with no trailing new-line) that describes the problem. A zero err
retrieves a message for the most recent error. If no error has occurred, the return value is a null pointer (not a pointer to the null
string). Using err of -1 also retrieves the most recent error, except it guarantees a non-null return value, even when no error has
occurred. If no message is available for the given number, returns a pointer to an appropriate message. This function does not have the
side effect of clearing the internal error number.
EXAMPLES
The following fragment clears the internal error number and checks it later for errors. Unless an error occurs after the first call to the
next call will return zero.
(void)elf_errno();
while (more_to_do)
{
/* processing ... */
if ((err = elf_errno()) != 0)
{
msg = elf_errmsg(err);
/* print msg */
}
}
SEE ALSO elf(3E), elf_version(3E).
elf_error(3E)