cvs.gedasymbols.org/archives/browse.cgi   search  
Mail Archives: djgpp/1999/09/21/20:37:55

Date: Tue, 21 Sep 1999 16:07:07 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: Ghalos <greg AT holdridge7 DOT freeserve DOT co DOT uk>
cc: djgpp AT delorie DOT com
Subject: Re: go32!
In-Reply-To: <7s68nn$nm0$1@news4.svr.pol.co.uk>
Message-ID: <Pine.SUN.3.91.990921160646.19568q-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Mon, 20 Sep 1999, Ghalos wrote:

> _go32_dpmi_get_protected_mode_interrupt_handler(0x09, &original_vector);
> 
> handler_info.pm_offset = keyboard_handler;     // <-- Causes a warning!
> _go32_dpmi_allocate_iret_wrapper(&handler_info);
> _go32_dpmi_set_protected_mode_interrupt_handler(0x09, &handler_info);
> // End code fragment
> 
> When I compile (include dpmi.h and go32.h) it will compile fine but when it
> links I get:
> 
> Error: undefined reference to
> '_go32_dpmi_get_protected_mode_interrupt_vector'
> Error: undefined reference to
> '_go32_dpmi_set_protected_mode_interrupt_vector'

I'm confused.  The code calls _go32_dpmi_set_protected_mode_interrupt_handler, 
but the error message is about _go32_dpmi_set_protected_mode_interrupt_vector?
Did you copy the error message and the code by hand?  If so, which one is
right?

The DJGPP library has _go32_dpmi_set_protected_mode_interrupt_vector, not
_go32_dpmi_set_protected_mode_interrupt_handler.

> Error: undefined reference to 'LOCK_VARIABLE'
> Error: undefined reference to 'LOCK_FUNCTION'

Obviously, you didn't define 'LOCK_FUNCTION' and 'LOCK_VARIABLE'.

> however the linker does not complain about the free /
> allocate_iret_wrapper...

Because the library has it.  Please check the library reference (the
file libc.info) for correct spelling of function names.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019