Compiling and Linking for MS-DOS
Microsoft® SQL Server™ 2000 does not supply the environment for compiling ESQL/C 16-bit Microsoft MS-DOS® clients (the 16-bit binaries for MS-DOS are not included). However, these clients will run under SQL Server 2000. To compile an ESQL/C 16-bit MS-DOS client, you need to use the ESQL/C compilation environment in SQL Server 6.0 or 6.5, which includes the 16-bit MS-DOS binaries.
You can compile and link precompiled ESQL/C programs for MS-DOS on a computer running the MS-DOS version 6.22 or later operating system by using the Microsoft Visual C++® development system (16-bit), version 1.52 or later.
ESQL/C sources can be built as large memory model MS-DOS executable files.
You can set the LIB environment variable to avoid specifying library paths for the ESQL/C libraries, for example:
SET LIB= C:\Program Files\Microsoft SQL Server\80\Tools\DevTools\Lib;C:\MSVC\LIB
The following libraries are supplied and used by ESQL/C programs when built for MS-DOS:
To compile and link a program for MS-DOS
- Run the compiler Cl.exe as you would for MS-DOS to create an object file, for example:
CL /c /W3 /AL MYPROGRM.C
In the example, the compiler creates the object file Myprogrm.obj. The /AL compiler option sets the memory model of the program to large. You can use any additional compiler options allowed by the compiler.
- Run the linker Link.exe as you would for MS-DOS to link the compiled ESQL/C object file and system libraries, which creates an executable file for MS-DOS. When linking files for MS-DOS-based programs, you must explicitly link with the Sqlakd.lib, Rldblib.lib, Oldnames.lib and Car.lib libraries, for example:
LINK /NOD MYPROGRM.OBJ,,, LLIBCE.LIB SQLAKD.LIB CAR.LIB OLDNAMES.LIB RLDBLIB.LIB, MYPROGRM.DEF;
In the example, the compiled object file Myprogrm.obj, system library Llibce.lib, ESQL/C libraries Sqlakd.lib, Car.lib, and Oldnames.lib and the DB-Library library Rldblib.lib are linked together to create the executable file Myprogrm.exe for MS-DOS.
To run an MS-DOS-based ESQL/C application, load the appropriate Net-Library TSR.