Ancestors

Written by FozzTexx on 2025-01-21 at 20:57

Fighting with building Open Watcom on Linux & compiling/linking. wcc compiles simple hello world, but wlink errors:

__STK is an undefined reference

printf_ is an undefined reference

cstart is an undefined reference

small_code is an undefined reference

[#]RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-21 at 20:58

The instructions for building Open Watcom are pretty sparse. Just say "run build.sh and voila! Everything will just work!" Except that's not the case. #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-21 at 20:59

It seems like build.sh never built the libraries:

Warning! W1008: cannot open clibs.lib : No such file or directory

Warning! W1008: cannot open math87s.lib : No such file or directory

Warning! W1008: cannot open emu87.lib : No such file or directory

If I do a find in the open watcom source tree they definitely aren't there.

[#]RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-22 at 02:20

I don't think Open Watcom actually works, at least not if you compile it yourself. That means the only way to use it is a pre-built binary, only available for DOS/Windows, which is not what I'm interested in. This is just a simple hello_world.c and should easily compile, not spew out errors complaining that libraries are missing and there's no main() function (“small_code is an undefined reference”).

[#]RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-22 at 04:01

I think I might have figured it out! There’s a completely undocumented tribal knowledge secret you have to know: the libraries aren't part of Open Watcom. You have to get them from the original MS-DOS Watcom C compiler. 🤦🏻‍♂️

#RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Toot

Written by FozzTexx on 2025-01-22 at 16:08

Put an Open Watcom 1.9 "recipe" for building from source into a Dockerfile so that there's at least some kind of documentation for how to do it.

https://github.com/FozzTexx/open-watcom

[#]RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Descendants

Written by Andrew Golding on 2025-01-22 at 16:39

@fozztexx really dumb question perhaps already answered, but I take it OpenWatcom 2 did not work?

I remember setting up OpenWatcom on Freedos because I needed to build the SYS command-line tool, finding that OpenWatcom 1.9 didn't quite work right and using 2.

Also, is this still in service of building tools targeting the 386 in Linux?

=> More informations about this toot | More toots from huronbikes@cyberplace.social

Written by FozzTexx on 2025-01-22 at 16:50

@huronbikes I started with OW 2 and couldn’t get it to link. I was then told by someone much more familiar with all of it that OW 1.9 is preferred because of issues with OW 2.

OW is for cross compiling things for 8086 DOS. I prefer to work under Linux than messing around with DOS emulation if I can, it’s just so much easier.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Proxy Information
Original URL
gemini://mastogem.picasoft.net/thread/113872873095361217
Status Code
Success (20)
Meta
text/gemini
Capsule Response Time
303.989047 milliseconds
Gemini-to-HTML Time
1.929512 milliseconds

This content has been proxied by September (3851b).