gdb: No symbol table is loaded.
I just installed Cigwin on Windows 7, S.P. 1. How do I get gdb to Access the symbol table? I assemble and link with[code]
as -o t01.o -L t01.S ld -o t01 t01 This gets a Windows PE ejecutable, which gdb seems to have no trouble in executing. When I issue the list command, it says "No symbol table is loaded", though. |
You are not adding debug information.
Try adding "--gstabs" to the as command. |
Thanks for that one. What do you think makes this:
Code:
cat t01.S |
You can't use Linux system calls on Cygwin.
|
aLL right. Do you know a BIOS quick reference for the int calls?
|
You could check http://en.wikipedia.org/wiki/BIOS_interrupt_call I guess.
I don't think BIOS interrupts work under Cygwin/Windows either. |
I rewrote the program so it reads:
Code:
$ cat h01.S |
Would export LANG=C give english messages?
I guess the problem is you're trying to put a 32-bit address into a 16 bit register. |
I now have messages i English! Thanks. No. offset msg should be handled by the assembler as a 16-bit displacement, which shure Works in 8086 and following architectures.
|
Quote:
|
Very simply. Still the x86 architecture provides for 16-bit segment registers. This is a 64KB address space.
|
You've a made a 32bit exe, therefore the address space is 32 bit.
Quote:
|
Actually, Windows is neither linux nor DOS. Windows' system-calls aren't meant to use from user-programs; the standard way is calling Windows API functions from DLL's like KERNEL32.DLL, USER32.DLL, WS2_32.DLL
|
Quote:
|
Almost. You should keep in mind that Windows is not DOS. It might contain an DOS-emulator but not every version does.
|
All times are GMT -5. The time now is 07:36 AM. |