Kbase 21176: Errors Linking ESQL/C Small Client 9.X on Windows
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  09/07/2003 |
|
Status: Unverified
FACT(s) (Environment):
Progress 9.x
Windows 32 Intel
SYMPTOM(s):
Errors encountered when linking a small client on a Windows
utsleep.obj : error LNK2005: _utsleep already defined in n2hlinet.obj
utsleep.obj : warning LNK4006: _utsleep already defined in n2hlinet.obj; second definition ignored
Creating library esqlnet.lib and object esqlnet.exp
ncslist.obj : error LNK2001: unresolved external symbol _bsdbgndll
ncahliut.obj : error LNK2001: unresolved external symbol __imp__DispatchMessageA@4
__imp__TranslateMessage@4
__imp__PeekMessageA@20
__imp__DestroyWindow@4
__imp__UnregisterClassA@8
__imp__CreateWindowExA@48
__imp__RegisterClassA@4
__imp__LoadCursorA@8
__imp__DefWindowProcA@16
sysglb.obj : error LNK2001: unresolved external symbol _init_bsdglobs
drevt.obj : error LNK2001: unresolved external symbol __imp__DeregisterEventSource@4
__imp__ReportEventA@36
__imp__RegisterEventSourceA@8
__imp__RegCloseKey@4
drevt.obj : error LNK2001: unresolved external symbol __imp__RegSetValueExA@24
__imp__RegCreateKeyExA@36
inisys.lib(wwini.obj) : error LNK2001: unresolved external symbol __imp__wsprintfA
__imp__RegQueryValueExA@24
__imp__RegEnumValueA@32
__imp__RegEnumKeyExA@32
__imp__RegOpenKeyExA@20
__imp__RegDeleteValueA@8
__imp__RegDeleteKeyA@8
__imp__RegSetValueExA@24
__imp__RegCreateKeyExA@36
__imp__RegCloseKey@4
dblgnt.obj : error LNK2001: unresolved external symbol _dblgpfx
dblgnt.obj : error LNK2001: unresolved external symbol _gwlgpfx
ut.lib(utosfunc.obj) : error LNK2001: unresolved external symbol __imp__RegOpenKeyExA@20
__imp__CharUpperA@4
__imp__FindWindowA@8
__imp__IsWindowEnabled@4
__imp__IsWindowVisible@4
__imp__GetClassNameA@12
__imp__SetForegroundWindow@4
__imp__PostMessageA@16
__imp__IsIconic@4
__imp__EnumWindows@8
__imp__CharUpperBuffA@8
__imp__OemToCharA@8
__imp__wvsprintfA@12
__imp__RegCloseKey@4
CAUSE:
The ESQL/C small client is the preferred ESQL client for a multi-user network operation. It contains only Progress client communications and minor utility modules to access the Progress Open Interface Driver. The OID can handle all static and dynamic SQL requests on behalf of an ESQL small client.
You can use the PROBUILD utility to generate UNIX link scripts or Windows linker response files for all ESQL client executables except the Windows small client.
FIX:
For the Windows small client, create your own link script. To link your Windows application with the ESQL small client, construct a standard Windows linker response file for your application, and include a reference to the import library (esql32.lib) for the ESQL small client DLL.
This is an example of a link script to build an ESQL/C small client:
<your.objs>
c:/progress/probuild/esqlc/esql32.lib
/NOLOGO
/OUT:dyndemo.exe
/MAP:dyndemo.map
libcmt.lib
kernel32.lib
shell32.lib
user32.lib
comdlg32.lib
gdi32.lib
advapi32.lib
comctl32.lib
winspool.lib
netapi32.lib
wsock32.lib
odefaultlib:libc.lib
odefaultlib:libcmt.lib
/COMMENT:"Module:esqlnet"