Thread overview
Linker Problem
Jun 15, 2004
Pascal
Jun 15, 2004
Walter
Jun 16, 2004
Pascal
June 15, 2004
Hi,

I have a problem with the linker.

Here is my commande line

dmc.exe -DBUILD_DLL -D_WIN32 -mn -WD -NL kernel32.lib -NL newmath11dll.lib kinemodstd.cpp

and here is the output :

link kinemodstd,,,C:\dm840c\dm\lib\kernel32+C:\dm840c\dm\lib\newmath11dll,kinemodstd/noi;

OPTLINK (R) for Win32  Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

OPTLINK : Error 180: No Match Found for Export/ENTRY -  : nbmodel
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : namemodel
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelexp
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : imagemodel
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : stdmodeldiff
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelnbpar
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelparname
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelnbspar
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelsparname
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelequalin
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelsecpar
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelgradient
OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelautostart
kinemodstd.obj(kinemodstd)
Error 42: Symbol Undefined __acrtused_dll
kinemodstd.obj(kinemodstd)
Error 42: Symbol Undefined __fltused
kinemodstd.obj(kinemodstd)
Error 42: Symbol Undefined _exp
kinemodstd.obj(kinemodstd)
Error 42: Symbol Undefined _log
kinemodstd.obj(kinemodstd)
Error 42: Symbol Undefined _pow
kinemodstd.obj(kinemodstd)
Error 42: Symbol Undefined _strcpy
OPTLINK : Warning 174: 32-bit Segments Inappropriate for 16-bit Segmented output

OPTLINK : Error 81: Cannot EXPORT : nbmodel
OPTLINK : Error 81: Cannot EXPORT : namemodel
OPTLINK : Error 81: Cannot EXPORT : modelexp
OPTLINK : Error 81: Cannot EXPORT : imagemodel
OPTLINK : Error 81: Cannot EXPORT : stdmodeldiff
OPTLINK : Error 81: Cannot EXPORT : modelnbpar
OPTLINK : Error 81: Cannot EXPORT : modelparname
OPTLINK : Error 81: Cannot EXPORT : modelnbspar
OPTLINK : Error 81: Cannot EXPORT : modelsparname
OPTLINK : Error 81: Cannot EXPORT : modelequalin
OPTLINK : Error 81: Cannot EXPORT : modelsecpar
OPTLINK : Error 81: Cannot EXPORT : modelgradient
OPTLINK : Error 81: Cannot EXPORT : modelautostart
kinemodstd.obj(kinemodstd)
Error 35: Cannot Reach TARGET from FRAME at Relative 003E6H  from
Segment _TEXT
FRAME  = Frame of Group FLAT 0000
TARGET = Segment _DATA 00000H
FIXUPP Type = 32-bit Offset

--- errorlevel 33


Is somebody can help me?

Thank's

Pascal


June 15, 2004
You'll need a module definition file www.digitalmars.com/ctg/ctgDefFiles.html to create a DLL, because the linker needs to be told that it is building a DLL. Also, you turned off the default library search with -NL, which is why symbols like _strcpy are undefined, since they are in the default library.


"Pascal" <Pascal_member@pathlink.com> wrote in message news:camsj6$1vot$1@digitaldaemon.com...
> Hi,
>
> I have a problem with the linker.
>
> Here is my commande line
>
> dmc.exe -DBUILD_DLL -D_WIN32 -mn -WD -NL kernel32.lib -NL newmath11dll.lib kinemodstd.cpp
>
> and here is the output :
>
> link
>
kinemodstd,,,C:\dm840c\dm\lib\kernel32+C:\dm840c\dm\lib\newmath11dll,kinemod std/noi;
>
> OPTLINK (R) for Win32  Release 7.50B1
> Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : nbmodel
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : namemodel
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelexp
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : imagemodel
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : stdmodeldiff
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelnbpar
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelparname
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelnbspar
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelsparname
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelequalin
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelsecpar
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelgradient
> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelautostart
> kinemodstd.obj(kinemodstd)
> Error 42: Symbol Undefined __acrtused_dll
> kinemodstd.obj(kinemodstd)
> Error 42: Symbol Undefined __fltused
> kinemodstd.obj(kinemodstd)
> Error 42: Symbol Undefined _exp
> kinemodstd.obj(kinemodstd)
> Error 42: Symbol Undefined _log
> kinemodstd.obj(kinemodstd)
> Error 42: Symbol Undefined _pow
> kinemodstd.obj(kinemodstd)
> Error 42: Symbol Undefined _strcpy
> OPTLINK : Warning 174: 32-bit Segments Inappropriate for 16-bit Segmented
output
>
> OPTLINK : Error 81: Cannot EXPORT : nbmodel
> OPTLINK : Error 81: Cannot EXPORT : namemodel
> OPTLINK : Error 81: Cannot EXPORT : modelexp
> OPTLINK : Error 81: Cannot EXPORT : imagemodel
> OPTLINK : Error 81: Cannot EXPORT : stdmodeldiff
> OPTLINK : Error 81: Cannot EXPORT : modelnbpar
> OPTLINK : Error 81: Cannot EXPORT : modelparname
> OPTLINK : Error 81: Cannot EXPORT : modelnbspar
> OPTLINK : Error 81: Cannot EXPORT : modelsparname
> OPTLINK : Error 81: Cannot EXPORT : modelequalin
> OPTLINK : Error 81: Cannot EXPORT : modelsecpar
> OPTLINK : Error 81: Cannot EXPORT : modelgradient
> OPTLINK : Error 81: Cannot EXPORT : modelautostart
> kinemodstd.obj(kinemodstd)
> Error 35: Cannot Reach TARGET from FRAME at Relative 003E6H  from
> Segment _TEXT
> FRAME  = Frame of Group FLAT 0000
> TARGET = Segment _DATA 00000H
> FIXUPP Type = 32-bit Offset
>
> --- errorlevel 33
>
>
> Is somebody can help me?
>
> Thank's
>
> Pascal
>
>


June 16, 2004
Hi,

I have a .def file but I had to add this line :
EXETYPE NT

I turn off the -NL option, and all is OK now

Thanks

Pascal



In article <canegb$2s9j$1@digitaldaemon.com>, Walter says...
>
>You'll need a module definition file www.digitalmars.com/ctg/ctgDefFiles.html to create a DLL, because the linker needs to be told that it is building a DLL. Also, you turned off the default library search with -NL, which is why symbols like _strcpy are undefined, since they are in the default library.
>
>
>"Pascal" <Pascal_member@pathlink.com> wrote in message news:camsj6$1vot$1@digitaldaemon.com...
>> Hi,
>>
>> I have a problem with the linker.
>>
>> Here is my commande line
>>
>> dmc.exe -DBUILD_DLL -D_WIN32 -mn -WD -NL kernel32.lib -NL newmath11dll.lib kinemodstd.cpp
>>
>> and here is the output :
>>
>> link
>>
>kinemodstd,,,C:\dm840c\dm\lib\kernel32+C:\dm840c\dm\lib\newmath11dll,kinemod std/noi;
>>
>> OPTLINK (R) for Win32  Release 7.50B1
>> Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>>
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : nbmodel
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : namemodel
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelexp
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : imagemodel
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : stdmodeldiff
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelnbpar
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelparname
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelnbspar
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelsparname
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelequalin
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelsecpar
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelgradient
>> OPTLINK : Error 180: No Match Found for Export/ENTRY -  : modelautostart
>> kinemodstd.obj(kinemodstd)
>> Error 42: Symbol Undefined __acrtused_dll
>> kinemodstd.obj(kinemodstd)
>> Error 42: Symbol Undefined __fltused
>> kinemodstd.obj(kinemodstd)
>> Error 42: Symbol Undefined _exp
>> kinemodstd.obj(kinemodstd)
>> Error 42: Symbol Undefined _log
>> kinemodstd.obj(kinemodstd)
>> Error 42: Symbol Undefined _pow
>> kinemodstd.obj(kinemodstd)
>> Error 42: Symbol Undefined _strcpy
>> OPTLINK : Warning 174: 32-bit Segments Inappropriate for 16-bit Segmented
>output
>>
>> OPTLINK : Error 81: Cannot EXPORT : nbmodel
>> OPTLINK : Error 81: Cannot EXPORT : namemodel
>> OPTLINK : Error 81: Cannot EXPORT : modelexp
>> OPTLINK : Error 81: Cannot EXPORT : imagemodel
>> OPTLINK : Error 81: Cannot EXPORT : stdmodeldiff
>> OPTLINK : Error 81: Cannot EXPORT : modelnbpar
>> OPTLINK : Error 81: Cannot EXPORT : modelparname
>> OPTLINK : Error 81: Cannot EXPORT : modelnbspar
>> OPTLINK : Error 81: Cannot EXPORT : modelsparname
>> OPTLINK : Error 81: Cannot EXPORT : modelequalin
>> OPTLINK : Error 81: Cannot EXPORT : modelsecpar
>> OPTLINK : Error 81: Cannot EXPORT : modelgradient
>> OPTLINK : Error 81: Cannot EXPORT : modelautostart
>> kinemodstd.obj(kinemodstd)
>> Error 35: Cannot Reach TARGET from FRAME at Relative 003E6H  from
>> Segment _TEXT
>> FRAME  = Frame of Group FLAT 0000
>> TARGET = Segment _DATA 00000H
>> FIXUPP Type = 32-bit Offset
>>
>> --- errorlevel 33
>>
>>
>> Is somebody can help me?
>>
>> Thank's
>>
>> Pascal
>>
>>
>
>