Using Microsoft C++
From InterBase
Go Up to Building Applications
Use the following options when compiling applications with Microsoft C++:
Option | Action |
---|---|
|
Compile without linking (DLLs only). |
|
Generate complete debugging information. |
|
Defines “WIN32” to be the null string. |
|
Use a multi-thread, statically-linked library. |
For example, these commands use the Microsoft compiler to build a DLL that uses InterBase:
cl -c -Zi -DWIN32 -D_MT -LD udf.c
lib -out:udf.lib -def:funclib.def -machine:i586 -subsystem:console
link -DLL -out:funclib.dll -DEBUG:full,mapped -DEBUGTYPE:CV
-machine:i586 -entry:_DllMainCRTStartup@12 -subsystem:console
-verbose udf.obj udf.exp gds32.lib ib_util_ms.lib crtdll.lib
This command builds an InterBase executable using the Microsoft compiler:
cl -Zi -DWIN32 -D_MT -MD udftest.c udf.lib gds32.lib
ib_util_ms.lib crtdll.lib
Note:
See Working with UDFs in the Developer's Guide for more about compiling and linking user-defined libraries.
See Working with UDFs in the Developer's Guide for more about compiling and linking user-defined libraries.
Using the Dynamic Runtime Library:
If you are
- using a Microsoft Visual C++ 2.0 or Microsoft Visual C++ 4.0
- compiling and linking separately, and
- using the Dynamic Runtime Library (
msvcrt20.dll
ormsvcrt40.dll
)
you need to use the /MD
compiler flag to compile with the run time library (RTL), as well as linking with the correct import library.