Bela Lubkin <***@sco.com> wrote:
>bruce radtke wrote:
>> When I run debug - before I do anything ( next stmt, run, etc), debug pops
>> up with the error message "No entry 'fork' exists'. Then the next error
>> is "No entry '_execve' exists" .
>I just tried that and got the same results. Your description makes it
>sound like you were using the X11 interface to `debug`; I was using the
>ASCII interface. The entire session looked like:
> $ /udk/usr/ccs/bin/debug myhello
> Warning: No entry "_fork" exists
> Warning: No entry "_execve" exists
> New program myhello (process p1) created
> HALTED p1 [.text in myhello.c]
> 5: printf( "Hello world\n");
> debug> run
> Hello world
> Process p1 has exited
> No more processes
> debug> q
>So those messages were printed, but made no difference; debug was still
>able to run the program.
>> I select next statment to execute the printf command. A popup error
>> displays "Top stack frame invalid, program counter out of range". Hit OK.
>> Next error message "Stack adjusted to start with previous frame". I hit OK.
>> I hit next stmt - error message "Invalid text address 0x240000ff".
>>
>> I suspect that I'm linking to some libc.a file that is not for this system -
>> OpenServer 5.0.6. I'm clueless. other then reinstalling Unix again I'm
>> not sure what to do.
>I think you've inadvertently given me a big clue. I said to use `dbx`.
>You used `debug`. That's part of the UDK (UnixWare/OpenServer Developer
>Kit), which is not the native development system for OpenServer. Sure
>enough, if I compile myhello.c to a static ELF binary using the UDK, the
>resulting binary dumps core. Which is expected: the UDK's ability to
>generate binaries that run on both OpenServer and UnixWare relies on
>shared library trickery.
>You're using the wrong development system for the task. UDK-generated
>static binaries run only on UnixWare.
>UDK is on a separate CD that comes with the OpenServer media
>distribution. The OpenServer Development System is on the main OSR5 CD.
>It is a licensed $$ product. If you have a license for it, install it
>(run `scoadmin software`, point it at the CD, install "SCO OpenServer
>Development System"). If you don't have a license, buy one; or install
>"SCO OpenServer Linker and Application Development Libraries", which is
>free, then install an appropriate gcc distribution (someone else will
>have to help you with specific URLs for that).
Well, on 5.0.7 it's right on the OS CD.
Prior to that, it's still out at http://www.sco.com/skunkware , isn't
it?
--
***@aplawrence.com Unix/Linux/Mac OS X resources: http://aplawrence.com
Get paid for writing about tech: http://aplawrence.com/publish.html