HP-UX 64 compilation causing some code to seg fault


 
Thread Tools Search this Thread
Operating Systems HP-UX HP-UX 64 compilation causing some code to seg fault
# 1  
Old 06-06-2008
HP-UX 64 compilation causing some code to seg fault

Hello everyone,

Today we are attempting to port some legacy C code to a 64 HP-UX machine at my company and there is kind of a strange error we ran into.

there is a small function they have defined called zgetenv that
accepts a char* and basically just does some null checking and returns
getenv(char*)

the function works fine if i copy it into the file im attempting to recompile and change nothing other than the name of the function.
but when i attempt to call this function from the library that we have recompiled for the 64 bit machine I get a segmentation fault on the
returned value if i call a strlen or strcpy on it.

the strange thing is that this function is being called all over the place in this code and it only gives seg faults in this one module for some reason...

the only possible problem i can think of would be that we havent correctly linked this module to the new 64 bit compilation or something but I dont think that would result in a segmentation fault...

I am really really lost and any help would be much appreciated.

Thanks, Eric
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Source code compilation

Need assistance in Source code compilation . When installing a software compiling a source code . Whatever the output that prints on the screen i want to log it into a file. How can i see output and store the output to file ./configure make make install Is there other way of seeing output... (5 Replies)
Discussion started by: ajayram_arya
5 Replies

2. Programming

This code keeps giving me a segmentation fault why?

#include<stdlib.h> #include <pthread.h> #include "tlpi_hdr.h" #include <stdio.h> static volatile int glob = 0; static struct { pthread_t t1,t2; } *thread; static void * /* Loop 'arg' times incrementing 'glob' */ threadFunc(void *arg) { int loops = *((int *) arg); ... (1 Reply)
Discussion started by: fwrlfo
1 Replies

3. Shell Programming and Scripting

sort -t option causing code to fail need ASCII character

Hello, When I run this UNIX code without the -t option it gives me the desired results. The code keeps the record with the greatest datetime based on the key columns. I sort it first then sort it again with the -u option, that's it. I need to have a variable to specify an ASCII character... (2 Replies)
Discussion started by: script_op2a
2 Replies

4. Programming

C code : Segmentation fault

Hi Friends, I have written a small code in C which performs the below operations Task : 1 ) read line by line from a file. 2 ) assuming 3th and 4th fields of the file as GN and GNTO 3 ) The target file should contain all the fields except GNTO. 4... (3 Replies)
Discussion started by: kiran_bhatter
3 Replies

5. Programming

Compilation error when compiling Pro*C code

I'm running a query similar to the one that I'm describing below -: _______________________________ EXEC SQL INSERT INTO TABLE1 ( C1 ,C2 ,C3 ,C4 ) (SELECT DISTINCT B.V1 ,B.V2 ,( SELECT D.V3 FROM TABLE2 D WHERE D.V3 = C.V4) ,B.V4 FROM TABLE2 B ,TABLE3 C WHERE B.V3 = C.V4) ;... (1 Reply)
Discussion started by: maheshp
1 Replies

6. Programming

Program exited with code 01: does it indicate unsuccessful compilation?

(gdb) r --------------------- enter Breakpoint 1, 0x0000000000409d40 in main () (gdb) n Single stepping until exit from function main, which has no line number information. Find_Cmd_Option: found option no. 2: seed (s) Find_Cmd_Option: found option no. 5: dfile (c) Initial no. div... (1 Reply)
Discussion started by: cdbug
1 Replies

7. Programming

Seg Fault Running AIX COBOL program

Hi some help read............ I'm getting a segmentation fault when I run an AIX COBOL/Db2 program. I initiate the program from the command line, but it hangs, and then when I press enter it generates a segmantation fault and produces a core dump. The box is running AIX software level ... (5 Replies)
Discussion started by: steve_f
5 Replies

8. Programming

Xlib Problem: XCloseDisplay seg fault

Hi, First of all forgive me if Xlib related problems does not go under this thread. In my main program, im using Xlib`s XImage type object which contains a regularly updating bitmap, and maps the XImage to a Xwindow using XPutImage. ( XCreateImage is used to create the XImage. ) The... (0 Replies)
Discussion started by: wolwy_pete
0 Replies

9. Programming

compilation parameters, code optimization

Hi all, I implemented an application, through using c++ and compiled it with g++. At first, what I did is (@ compilation): g++ calcBacon.C -o test -DDEBUG after I ran my application it took almost 120 sec. to finish its execution when I compiled with optimization parameters, execution... (5 Replies)
Discussion started by: SaTYR
5 Replies

10. Programming

Open Suse 10 seg fault

Okay, so here is some code that when compiled on Fedora Core 6 works great, but when I compile and run it on OpenSuse 10 it gives back a seg fault when trying to join the 2nd thead. #include <pthread.h> #include <stdio.h> int print_message_function( void *ptr ); int x = 1; main() { ... (1 Reply)
Discussion started by: chrisdrobison
1 Replies
Login or Register to Ask a Question
uac(1)							      General Commands Manual							    uac(1)

NAME
uac - Unaligned Access Message Control SYNOPSIS
uac p | s [value] uac p | s [keyword] OPTIONS
The following options are used with the uac command: Sets or displays the current option setting for the parent process Sets or displays the current option setting for the system The following keywords are used with the p option: Reset the current option settings to the default for the parent process Do not print the unaligned access warning message for the parent process Do not fix the unaligned access for the parent process Deliver a SIGBUS signal to the parent process The following keywords are used with the s option: Reset the current option settings to the default for the system Do not print the unaligned access warning message for the system Usually, the parent process is the shell. DESCRIPTION
Most complex instruction set computers (CISC) can access unaligned data but only at a significantly reduced speed. Most reduced instruc- tion set computers (RISC) do not attempt to handle unaligned accesses. Instead, they generate an unaligned access trap and let the operat- ing system handle the fault. The default action for the operating system when an unaligned access fault occurs is to fix the unaligned access fault and then display a warning message informing the user process that an unaligned access fault has occurred. The warning message has the following form: "Unaligned access pid=nnn <prog_name> va=virtual_addr pc=pc_addr". If you want to change the code to prevent the unaligned access faults from occurring in the future, the warning message gives you the information you need to locate the code causing a fault. (See the Program- mer's Guide for details on the causes and effects of misaligned data.) In addition, the default action for the operating system is to not deliver a SIGBUS signal to the parent process when an unaligned access fault occurs. These defaults are satisfactory for most users, but some users require a different behavior and want to specify their own Unaligned Access Control (UAC). The uac command enables or disables the display of "Unaligned access" messages. The command sets or displays the UAC_NOPRINT, UAC_NOFIX, and UAC_SIGBUS options, as defined in setsysinfo(2). If value is not specified, the current option setting is displayed. You can specify value as either 0 (zero) or 1 (one). If value is 0 (zero), the option is turned on and messages are not displayed. If value is 1 (one), the option is turned off and messages are displayed. Keywords can be used singly, or in any combination. However, the reset keyword overrides any other keywords it is used with. RESTRICTIONS
You must be superuser to set the system option. EXAMPLES
Both of the following commands disable messages for the parent process: # uac p 0 # uac p noprint Both of the following commands enable messages for the system: # uac s 1 # uac s reset The following command disables fixing of an unaligned access fault, disables printing a message for an unaligned access fault to the parent process, and enables delivery of a SIGBUS signal to the parent process: # uac p nofix noprint sigbus SEE ALSO
getsysinfo(2), setsysinfo(2) Programmer's Guide uac(1)