Andrew Wan wrote:
Quote:
I am having problems linking an assembly object with my C object
files. Am getting:
>
Quote:
Linker Warning: DOSSEG directive ignored in module asm.asm
Linker Error: Undefined symbol _ASMClsV in module main.c
Linker Error: Undefined symbol VADDR in module asm.asm
>
MAYBE the problem is the missing underscores in the asm
program
Quote:
In my asm.asm file I've got:
>
DOSSEG
.MODEL huge
.386
>
.DATA
EXTRN vaddr : word;
EXTRN _vaddr : word;
add a leading underscore
Quote:
>
.CODE
PUBLIC ASMClsV
Shouldn't that be
PUBLIC _ASMClsV
with the leading _
Quote:
>
ASMClsV PROC Near
;bla bla
ASMClsV EndP
>
In main.c I've got:
>
extern void ASMClsV();
>
Am trying to link using Borland C++ 4.5 since my source files are all
16-bit. I successfully linked the same asm.asm file with a 16-bit
pascal object using Turbo Pascal 7.0. Why can't I link using Borland C+
+ 4.5 to a 16-bit C file?
>
Also, I used Microsoft Macro Assembler 5. Should I use Turbo Assembler?
>