Michael Reichenbach schrieb:
> Aitor Santamaría schrieb:
>> No, that I didn't bother to adjust the final makefile to OW.
> 
> And did you test to build the example with dflat+ 1.0 and OW 1.6 yourself?
> 
>  > OpenWatcom comes with the wcl utility (compile and link). Why don't
>> you try that instead of WMAKE?
> 
> Don't know but I will try.
> 
>> I guess it'll be easier, and you can
>> create HWORLD.EXE in a single line.
> 
> Yes.
> 
>> Check out the wcl options, you just have to tell it the source files,
>> the headers and the libraries, and it should easily create the EXE
>> file.
> 
> I have the OpenWatcom Tools.pdf
> 
> m{f,s,m,c,l,h} memory model — mf=flat ms=small mm=medium mc=compact ml=large
> mh=huge (default is "ms" for 16-bit and Netware, "mf" for 32-bit)
> 
> On the command line, you can list source
> file names as well as object file names. Source files are either
> compiled or assembled based
> on file extension; object files and libraries are simply included in the
> link phase. Options can
> be passed on to both the compiler and linker.
> 
> i=<directory> add directory to list of include directories
> 
>> Then you can put it inside a BAT
>> files.
> 
> This is what I currently have:
> 
> wcl dtest.cpp C:\devel\dflatP\SOURCE\LIB\DTOOL0LB.LIB
> C:\devel\dflatP\SOURCE\LIB\DFLATPLO.LIB /i=C:\devel\dflatP\SOURCE\INC
> /i=C:\devel\dflatP\SOURCE\LIB /ml
> 
> I also tested to put everything from INC and LIB folder to one folder
> (C:\devel\dtest) plus including dtest.cpp. (dtest.cpp is the example
> from DFP100.HTM) And then:
> 
> wcl dtest.cpp DTOOL0LB.LIB DFLATPLO.LIB
> 
> Error message:
> wcl dtest.cpp DTOOL0LB.LIB DFLATPLO.LIB
> Open Watcom C/C++16 Compile and Link Utility Version 1.6
> Portions Copyright (c) 1988-2002 Sybase, Inc. All Rights Reserved.
> Source code is available under the Sybase Open Watcom Public License.
> See http://www.openwatcom.org/ for details.
>        wpp DTEST.CPP
> Open Watcom C++16 Optimizing Compiler Version 1.6
> Portions Copyright (c) 1989-2002 Sybase, Inc. All Rights Reserved.
> Source code is available under the Sybase Open Watcom Public License.
> See http://www.openwatcom.org/ for details.
> dfpcore.h(183): Warning! W146: col(2) unexpected storage class specifier
> found
> dfpcore.h(183): Note! N393: col(2) included from dflatp.h(30)
> dfpcore.h(183): Note! N393: col(2) included from DTEST.CPP(8)
> DTEST.CPP: 63 lines, included 4652, 1 warning, no errors
>        wlink @__wcl__.lnk
> Open Watcom Linker Version 1.6
> Portions Copyright (c) 1985-2002 Sybase, Inc. All Rights Reserved.
> Source code is available under the Sybase Open Watcom Public License.
> See http://www.openwatcom.org/ for details.
> loading object files
> searching libraries
> Error! E2028: __STK is an undefined reference
> Error! E2028: window near * near CreateWindow( window_class, char const
> near *, int, int, int, int, void near *, window near *, int (near *)(),
> int ) is an undefined reference
> Error! E2028: void near ProcessMessages() is an undefined reference
> Error! E2028: classdefs near classdefs[] is an undefined reference
> Error! E2028: int near MessageBoxProc( window near *, int unsigned,
> long, long ) is an undefined reference
> Error! E2028: __anonymous_enum near GenericMessage( window near *, char
> near *, char near *, int, int (near *)(), char near *, char near *, int,
> int, int ) is an undefined reference
> Error! E2028: void near PostMessage( window near *, int unsigned, long,
> long ) is an undefined reference
> Error! E2028: _small_code_ is an undefined reference
> Warning! W1014: stack segment not found
> Warning! W1023: no starting address found, using 0000:0000
> creating a DOS executable
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol __STK
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol window near *
> near CreateWindow( window_class, char const near *, int, int, int, int,
> void near *, window near *, int (near *)(), int )
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol void near
> ProcessMessages()
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol classdefs
> near classdefs[]
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol int near
> MessageBoxProc( window near *, int unsigned, long, long )
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol
> __anonymous_enum near GenericMessage( window near *, char near *, char
> near *, int, int (near *)(), char near *, char near *, int, int, int )
> file DTEST.obj(C:\DEVEL\DTEST\DTEST.CPP): undefined symbol void near
> PostMessage( window near *, int unsigned, long, long )
> Error: Linker returned a bad status
> 
> -mr

-appendix-

By changing the name dtest.cpp to dtest.c and using

wcl dtest.c DTOOL0LB.LIB DFLATPLO.LIB -ml

(also tested DTOOL1LB.LIB and DTOOL2LB.LIB with same result)
I could decrease the number of errors. The new error messages:

wcl dtest.c DTOOL1LB.LIB DFLATPLO.LIB -ml
Open Watcom C/C++16 Compile and Link Utility Version 1.6
Portions Copyright (c) 1988-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
See http://www.openwatcom.org/ for details.
       wcc DTEST.C  -ml
Open Watcom C16 Optimizing Compiler Version 1.6
Portions Copyright (c) 1984-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
See http://www.openwatcom.org/ for details.
DTEST.C: 85 lines, included 4864, 0 warnings, 0 errors
Code size: 266
       wlink @__wcl__.lnk
Open Watcom Linker Version 1.6
Portions Copyright (c) 1985-2002 Sybase, Inc. All Rights Reserved.
Source code is available under the Sybase Open Watcom Public License.
See http://www.openwatcom.org/ for details.
loading object files
searching libraries
Error! E2028: LogMessageStart_ is an undefined reference
Error! E2028: LogMessageEnd_ is an undefined reference
Error! E2028: HelpBoxProc_ is an undefined reference
creating a DOS executable
file DFLATPLO.LIB(C:\DFP100S\SOURCE\DFLATP\message.c): undefined symbol
LogMessageStart_
file DFLATPLO.LIB(C:\DFP100S\SOURCE\DFLATP\message.c): undefined symbol
LogMessageEnd_
file DFLATPLO.LIB(C:\DFP100S\SOURCE\DFLATP\normal.c): undefined symbol
HelpBoxProc_
Error: Linker returned a bad status

How wcl is finding out the path 'C:\DFP100S\SOURCE\DFLATP\'? I never
used this path and never typed this path.

-mr

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to