Thread overview | |||||
---|---|---|---|---|---|
|
January 07, 2002 getting 32bit helllo world to work? | ||||
---|---|---|---|---|
| ||||
Um..I'm confused. I generally know what I'm doing, but I can't get a 32bit DOS "hello world" to work. I've tried under Windows NT 4 and Windows XP. In NT 4, I had the CD 8.1x installed (ie: xcopied), I overlaid the 8.25 files. I was getting a USE16/DGROUP32 warnings. That may have been before I downloaded the x32 files (I had stupidly tried just compiling an empty file cx.c to get cx.obj). I copied \x32\lib to \dm\lib. I can build ok now. Running a hello world on NT4 results in ntvdm errors. Running on Windows XP, where I just downloaded and extracted the 8.25 files, no CD, nothing happens. (ok, not quite nothing, I do lose the scrollback in cmd, which is usual for running 16bit apps). C:\>del hello.exe C:\>type hello.c #include <stdio.h> int main() { fprintf(stderr, "Hello, world\n"); return 0; } C:\>sc -v -mx hello.c x32.lib scppn -v -mx hello.c Digital Mars C/C++ Compiler Version 8.25.1n Copyright (C) Digital Mars 2000-2001. All Rights Reserved. Written by Walter Bright www.digitalmars.com 'hello.c' 'c:\dm\bin\..\include\stdio.h' main C/C++ Compiler complete. Code: 0x0015 (21) Data: 0x000e (14) Time: 0.10 seconds link cx+hello,hello,,x32/noi; C:\>hello.exe C:\> ?? - Jay |
January 08, 2002 Re: getting 32bit helllo world to work? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jay Krell | Jay Krell wrote... > Um..I'm confused. I generally know what I'm doing, but I can't get a 32bit DOS "hello world" to work. I've tried under Windows NT 4 and Windows XP. > > In NT 4, I had the CD 8.1x installed (ie: xcopied), I overlaid the 8.25 > files. > I was getting a USE16/DGROUP32 warnings. That may have been before I > downloaded the x32 files (I had stupidly tried just compiling an empty file > cx.c to get cx.obj). > I copied \x32\lib to \dm\lib. > I can build ok now. That will not work. For a DOSX program a special obkect file CX.OBJ is needed. This is included in the dos extender zipfile. Use the original CX.OBJ as first obj to the linker You should also not use the CX.OBJ from the Symantec library with the X32.LIB from the extender zip-file! > link cx+hello,hello,,x32/noi; Looks ok as long as CX.OBJ and X32.LIB are from the dosextender zipfile. Regards, Heinz |
January 08, 2002 Re: getting 32bit helllo world to work? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Heinz Saathoff | ok..nevermind. I finally figured out that I had my cx.obj compiled from an empty cx.c still sitting there and the linker was picking it up. My .exe didn't even work under DOS. I got it working now. Very cool. Thanks. "Heinz Saathoff" <hsaat@bre.ipnet.de> wrote in message news:MPG.16a4c7e8b7dff6db989699@news.digitalmars.com... > Jay Krell wrote... > > Um..I'm confused. I generally know what I'm doing, but I can't get a 32bit > > DOS "hello world" to work. I've tried under Windows NT 4 and Windows XP. > > > > In NT 4, I had the CD 8.1x installed (ie: xcopied), I overlaid the 8.25 > > files. > > I was getting a USE16/DGROUP32 warnings. That may have been before I > > downloaded the x32 files (I had stupidly tried just compiling an empty file > > cx.c to get cx.obj). > > I copied \x32\lib to \dm\lib. > > I can build ok now. > > That will not work. For a DOSX program a special obkect file CX.OBJ is needed. This is included in the dos extender zipfile. Use the original CX.OBJ as first obj to the linker > > You should also not use the CX.OBJ from the Symantec library with the X32.LIB from the extender zip-file! > > > link cx+hello,hello,,x32/noi; > > Looks ok as long as CX.OBJ and X32.LIB are from the dosextender zipfile. > > > Regards, > Heinz |
Copyright © 1999-2021 by the D Language Foundation