1

次のメイクファイルを使用して標準的な例をビルドします

default: dquery.exe
CFLAGS = /DNT_INTEL /DWIN32_NT /DWIN32 -c /W3 /Od /Zi /I..\common /DNT /DMSC /MD
OBJS = dquery.obj
dquery.obj: dquery.c
    cl $(CFLAGS) dquery.c
dquery.exe: $(OBJS) 
    link -machine:IX86 user32.lib advapi32.lib netapi32.lib /DEBUG /DEBUGTYPE:BOTH -out:dquery.exe /STACK:3000,3000 $(OBJS) ..\lib\rdscli.lib ..\lib\util.lib

問題ありません。次に、Visual Studio 6 または 2010 を使用して、この例の新しいプロジェクトを作成し、make ファイルからすべてのパラメーターを適用して、このようなコマンド ライン オプションを取得しようとします。

コンパイラの場合:

/Od /I "..\common" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Gm /EHsc /RTC1 /MDd /Fo"Debug\\" /Fd"Debug\vc90.pdb" /W3 /nologo /c /Wp64 /ZI /TP /errorReport:prompt

リンカーの場合:

/VERBOSE /OUT:"Debug\dquery2.exe" /INCREMENTAL /NOLOGO /LIBPATH:"..\lib" /MANIFEST /MANIFESTFILE:"Debug\dquery2.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"d:\Piniutin\samples\dquery2\Debug\dquery2.pdb" /SUBSYSTEM:CONSOLE /DYNAMICBASE /NXCOMPAT /MACHINE:X86 /ERRORREPORT:PROMPT netapi32.lib rdscli.lib util.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib

リンカーは、次のようなエラー メッセージを出力します。

dquery.obj : error LNK2019: unresolved external symbol _SQLConnect referenced in function _main

この場合、リンカーはライブラリ ファイルを見つけることができないか、ライブラリ内の関数を見つけることができません。関数 _SQLConnect は rdscli.lib に存在しますが、リンカーはそれを認識できません。
どうすればこれを解決できますか?

前もって感謝します

4

0 に答える 0