📄 tour.gml
字号:
miscellaneous compiler front-end stuff shared between projects.
.note fmedit
form edit library, part of the SDK tools.
.note graphlib
Open Watcom graphics library for DOS.
.note gui
GUI library used by IDE, debugger, source browser and other tools.
.note hdr
source files of header files distributed with the compilers.
.note help
character mode help viewer (WHELP).
.note idebatch
batch processor for the IDE.
.note lib_misc
miscellaneous files shared between clib and other tools.
.note mad
Machine Architecture Description used by debugger.
.note mathlib
the math library.
.note misc
stuff that didn't fit anywhere else. Not much really.
.note mstools
Microsoft clone tools, front ends for compilers and utilities.
.note ncurses
a version of the ncurses library used by Linux console tools.
.note ndisasm
the "new" disassembler supporting variety of file format and
instruction sets. Very handy.
.note nwlib
the "new" library manager.
.note online
place for finished online help files and associated header files.
.note orl
Object Reader Library, reads OMF, COFF and ELF object files.
.note os2api
headers and libraries for the OS/2 API (both 16-bit and 32-bit).
.note owl
Object Writer Library, brother of ORL.
.note pgchart
presentation graphics and chart library for DOS (part of the graph
library).
.note plusplus
another huge directory containing all C++ stuff. Compiler, runtime
libraries, all that.
.note plustest
C++ regression test utilities. Extremely worthy of the attention of
compiler developers.
.note pmake
parallel make, tool used in the build process to roughly control
what gets built.
.note posix
a bunch of POSIX utilites like cp, rm and so on. Not suffering from
creeping featuritis but they do the job and they're portable.
.note rcsdll
interface to various revision control systems, used by IDE and editor.
.note re2c
regular expression to C converter, used in C++ compiler build.
.note redist
miscellaneous redistributable files.
.note rtdll
C, C++ and math runtime DLLs.
.note sdk
SDK tools like resource editor, resource compiler or dialog editor.
Also the home of wres library which is used by many other projects.
.note setupgui
source for the Open Watcom installer.
.note src
sample source code distributed with the compiler, some of it is
used in the documentation.
.note ssl
internal tool used for debugger builds.
.note techinfo
ancient system information utility.
.note trap
trap files (both local and remote), the heart of the debugger containing
platform specific debugging code. Heavy stuff.
.note trmem
memory tracker library (good for discovering and plugging memory leaks).
.note ui
user interface library.
.note vi
Open Watcom vi editor, clone of the popular (or not) Unix editor.
.note viper
the Open Watcom IDE.
.note viprdemo
IDE demo program.
.note w16api
headers and libraries for the Windows 3.x API.
.note w32api
headers and libraries for the Win32 API.
.note w32loadr
loaders for OS independent (OSI) binaries.
.note wasm
the x86 assembler. Large parts of the source are shared between standalone
wasm and inline assembler support for compilers targeting x86 platforms.
.note watcom
contains internal headers and libraries shared by many projects.
.note wclass
an Open Watcom C++ class library.
.note wdisasm
old x86 disassembler, nearly obsolete.
.note whpcvt
Watcom Help Converter used for producing online documentation.
.note wic
utility for converting include files between various languages.
.note win386
the Windows 386 extender.
.note wl
the Open Watcom linker, also contains the overlay manager library.
.note wmake
the make utility.
.note womp
Watcom Object Module Processor, primarily for conversion between
debug info formats. Some source files are shared with other projects.
.note wpack
simple file compression/decompression utility.
.note wpi
macros and helper functions for facilitating development of Windows
and OS/2 GUI programs from single source code.
.note wprof
the Open Watcom profiler.
.note wsample
the execution sampler, companion tool to the profiler.
.note wstrip
strip utility for detaching or attaching debug information and/or
resources.
.note wstub
stub program for DOS/4GW.
.note wtouch
a touch utility.
.note wv
the debugger (used to be called WVIDEO, hence the name).
.note yacc
Watcom's version of YACC used for building compilers/assemblers.
.endnote
.np
As you can see, there's a lot of stuff! Some of these projects
contain specific documentation pertaining to them, usually located
in a directory called 'doc' or somesuch. For the most
part, the truly uptodate and comprehensive documentation is the
source code.
.chap First Steps
This chapter briefly describes the prerequisite steps necessary
to build and/or contribute to the Open Watcom project &mdash how
to get the source code and how to set up the build environment.
.section Connecting up
.*
.np
.ix 'Perforce'
The most uptodate version of the Open Watcom source code lives on the
Open Watcom Perforce server. It is possible to go straight to the
Perforce repository but most people will find it much easier to
get a source archive first. The source archives can be found
at the Open Watcom web site,
.id http://www.openwatcom.org/
along with latest information on Perforce setup. You will generally
need a working installation of the previous release of Open Watcom
C/C++ and some free disk space to burn (one gigabyte should do).
.np
The Open Watcom source tree can be located in any directory
on any drive. After extracting the source archive you will find
a very important batch file called
.us setvars
in your Open Watcom root directory. This will set up a bunch of
necessary environment variables but first you'll have to edit it
to reflect your directory structure etc. It also contains the
necessary Perforce settings.
.np
Now is the time to connect to Perforce. Again, most uptodate
information can be found on the Open Watcom web site. If you followed
the instructions correctly, no servers are down and no other unpredictable
(or maybe predictable) things happened, you will have brought your source
tree to the latest revision (aka tip or head revision).
.section Gearing up for Building
.*
.np
.ix 'builder'
.ix 'pmake'
Before you start building the Open Watcom tools proper, you will need to
build several helper tools:
.us builder, pmake, cdsay
and a few others. These tools have to be built manually because the build
process won't work without them.
.np
The tools can be found in appropriately named subdirectory of the
.us bld
directory, which is named
.us builder
(showing complete lack of imagination).
.np
To build the required executables, go to a subdirectory of the project
.us builder
directory which sounds like it would be appropriate for your host platform
and run
.us wmake.
If you set up everything correctly, you will end up with working binaries
that were automatically copied into the right subdirectory of the
.us build
directory, and that directory is already on the
.id PATH.
If not, it's back to square one &mdash the most likely source of problems
is incorrectly set up
.us setvars
batch file.
.np
If you've got this far &mdash congratulations, you've finished the one-time
steps. You shouldn't need to redo them unless you decide to start from scratch,
your harddrive decides to die or some similarly catastrophic event occurs.
.np
You should now read the next chapter that describes the build architecture
and also lists the magic incantations necessary to invoke builds.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -