www.digitalmars.com         C & C++   DMDScript  

c++.dos.32-bits - Is Dosx32 Dosextender compilerswicht -mx still supported? Errors due linking

reply "Nils Koehler" <nils.koehler ibt-interfaces.de> writes:
I am porting a Software from compiler version 7.21 to the actual version
8.45
I used in the past compiler Option -mx. In the actual documentation I found,
that this switch is obsolete ?
-m[tsmclvfnrpxz][do][w][u] Select memory model
    32 Bit Models
    f OS/2 2.0 32 bit flat model (not supported)
    n Win32 32 bit flat model (default)
    p Pharlap 32 bit DOS Extender (obsolete)
    x DOSX 32 bit DOS Extender (obsolete)

What does it mean? Is it still working?.

In my application the compiling process will proceed without any errors,
but the linker produces the following errors:

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

D:\DM2\BIN\..\lib\cx.obj(cx)
 Error 42: Symbol Undefined __x386_start
D:\DM2\BIN\..\lib\cx.obj(cx)
 Error 42: Symbol Undefined __x386_data_16_alias
D:\DM2\BIN\..\lib\cx.obj(cx)
 Error 42: Symbol Undefined __x386_dbg_hook
D:\DM2\BIN\..\lib\cx.obj(cx)
 Error 42: Symbol Undefined __x32_link_in_x32_lib
graf.OBJ(graf)
 Error 42: Symbol Undefined __x386_free_protected_ptr
graf.OBJ(graf)
 Error 42: Symbol Undefined __x386_mk_protected_ptr
D:\DM2\BIN\..\lib\SDX.lib(inter)
 Error 42: Symbol Undefined __x386_memlock
D:\DM2\BIN\..\lib\SDX.lib(inter)
 Error 42: Symbol Undefined __x386_memunlock
SMAKE fatal error: command "LINK" returned with error code 8
Stopping.



Any idea for me?

Kindest Regards

Nils


-- 
-----------------------------------------------
Nils Köhler
IBT Interfaces
Im Taubhaus 19
63322 Rödermark
Germany

Tel:  +49-6074-6964-160
Fax: +49-6074-6964-161
Jan 16 2006
parent reply Heinz Saathoff <hsaat despammed.com> writes:
Hello,

Nils Koehler wrote...
 I am porting a Software from compiler version 7.21 to the actual version
 8.45
 I used in the past compiler Option -mx. In the actual documentation I found,
 that this switch is obsolete ?
 -m[tsmclvfnrpxz][do][w][u] Select memory model
     32 Bit Models
     f OS/2 2.0 32 bit flat model (not supported)
     n Win32 32 bit flat model (default)
     p Pharlap 32 bit DOS Extender (obsolete)
     x DOSX 32 bit DOS Extender (obsolete)
 
 What does it mean? Is it still working?.

It is still working. I'm not sure if the extender files are included in the DMC-CD but they can be downloaded from http://www.dosextender.com
 In my application the compiling process will proceed without any errors,
 but the linker produces the following errors:
 
 OPTLINK (R) for Win32  Release 7.50B1
 Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
 
 D:\DM2\BIN\..\lib\cx.obj(cx)
  Error 42: Symbol Undefined __x386_start
 [more linker errors]

You have to add the extender library X32.LIB to the dmc command line or to the linker: dmc -mx Hello.c X32.LIB or dmc -c -mx Hello.c link cx+Hello,Hello,Hello,X32; Make sure the LIB environment is set correctly or the files cx.obj and X32.LIB are located in the standard library directory. - Heinz
Jan 18 2006
parent "Nils Koehler" <nils.koehler ibt-interfaces.de> writes:
Thank you,

I forgot to put cx.obj and x32.lib into the Linklist.
It works with the following Linklist.:

cx.obj+
File1.OBJ+
File2.OBJ+
x32.lib

Nils


"Heinz Saathoff" <hsaat despammed.com> schrieb im Newsbeitrag
news:MPG.1e3816a04ec6355c9896fb news.digitalmars.com...
 Hello,

 Nils Koehler wrote...
 I am porting a Software from compiler version 7.21 to the actual version
 8.45
 I used in the past compiler Option -mx. In the actual documentation I


 that this switch is obsolete ?
 -m[tsmclvfnrpxz][do][w][u] Select memory model
     32 Bit Models
     f OS/2 2.0 32 bit flat model (not supported)
     n Win32 32 bit flat model (default)
     p Pharlap 32 bit DOS Extender (obsolete)
     x DOSX 32 bit DOS Extender (obsolete)

 What does it mean? Is it still working?.

It is still working. I'm not sure if the extender files are included in the DMC-CD but they can be downloaded from http://www.dosextender.com
 In my application the compiling process will proceed without any errors,
 but the linker produces the following errors:

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

 D:\DM2\BIN\..\lib\cx.obj(cx)
  Error 42: Symbol Undefined __x386_start
 [more linker errors]

You have to add the extender library X32.LIB to the dmc command line or to the linker: dmc -mx Hello.c X32.LIB or dmc -c -mx Hello.c link cx+Hello,Hello,Hello,X32; Make sure the LIB environment is set correctly or the files cx.obj and X32.LIB are located in the standard library directory. - Heinz

Jan 18 2006