Vim can be compiled on DOS-based systems as well as Win32 systems. These (usually 16-bit) executables do not support all the options found in the Win32 versions, but they support the basics.
Summary:
16 bit, Borland C++ and Turbo C++
C:\TEMP\Vim\src>ren Make_bc3.mak Makefile C:\TEMP\Vim\src>make |
16 bit, Turbo C
C:\TEMP\Vim\src>ren Make_tcc.mak Makefile C:\TEMP\Vim\src>make |
32 bit, DJGPP 2.0
C:\TEMP\Vim\src>make -f Make_djg.mak |
32 bit, Borland C++ 5.0 (make sure OSTYPE=DOS16)
C:\TEMP\Vim\src>make -f Make_bc5.mak |
Warning: Be sure to use the right make.exe. Microsoft C make doesn't work; Borland make only works with Make_bc3.mak, Make_bc5.mak and Make_tcc.mak; DJGPP/GNU make must be used for Make_djg.mak.
The Borland C++ compiler has been used to generate the MS-DOS executable; it should work without problems. You will probably have to change the paths for LIBPATH and INCLUDEPATH in the start of the makefile. You will get two warnings which can be ignored (one about _chmod and one about precompiled header files).
The "spawno" library by Ralf Brown was used in order to free memory when Vim starts a shell or other external command. Only about 200 bytes are taken from conventional memory. When recompiling get the spawno library from Simtel, directory msdos/c. It is called something like spwno413.zip. Or follow the instructions in the Makefile to remove the library.
The Turbo C makefile has not been tested much lately. It is included for those that don't have C++. You may need to make a few changes to get it to work.
DJGPP needs to be installed properly to compile Vim; you need a lot of things before it works. When your setup is OK, Vim should compile with just one warning (about an argument to signal()).
Make_bc5.mak is for those that have Borland C++ 5.0 or later. At the top of the file, there are some variables you can change to make either a 32-bit Windows exe (GUI or console mode), or a 16-bit MS-DOS version.
If you get all kinds of strange error messages when compiling, try adding <CR> characters at the end of each line.
16 bit, Borland C++ 5.0
C:\TEMP\Vim\src>make -f Make_w16.mak |
Warning: Be sure to use the right make.exe. It should be Borland make. Also, the vim16.def file must be in the DOS file format. If you get your sources from CVS or the UNIX tar archives, you will need to convert this file with unix2dos.
You will almost certainly have to change the paths for libs and include files in the makefile. Look for D:\BC5 and ctl3dv2. You will get a number of warnings which can be ignored ( _chmod, precompiled header files, and "possibly incorrect assignment").
The makefile should also work for BC++ 4.0 and 4.5, but may need tweaking to remove unsupported compiler & linker options.
(contributed by Michael A. Benzinger)
Building Vim on OpenNT 2.0 on Windows NT 4.0, with Softway's prerelease gcc:
Prepare configure to run the OpenNT shell.
$ export CONFIG_SHELL=//D/OpenNT/bin/sh |
Make the following exports for modifying config.mk:
$ export CFLAGS=-O -Wshadow $ export X_PRE_LIBS=-lXmu |
Run configure as follows:
$ configure --prefix=/vim --bindir=/bin/opennt --enable-gui=Motif |
$ configure --prefix=/vim --bindir=/bin/opennt --enable-gui=Athena |
Edit Makefile to perform the following:
Since the Makefile include syntax differs from that of gmake, change #include config.mk to .include "config.mk"
Change all install links to be "ln -f" and not "ln -s".
Now build the executable
$ make |