错误输出如下:
Linking...
Searching Libraries
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\MSVCRT.lib:
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _memmove already defined in LIBCMTD.lib(memmove.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strncpy already defined in LIBCMTD.lib(strncpy.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strrchr already defined in LIBCMTD.lib(strrchr.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _ftell already defined in LIBCMTD.lib(ftell.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fseek already defined in LIBCMTD.lib(fseek.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fopen already defined in LIBCMTD.lib(fopen.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in LIBCMTD.lib(fclose.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fread already defined in LIBCMTD.lib(fread.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _malloc already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _realloc already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _free already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _sprintf already defined in LIBCMTD.lib(sprintf.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strncmp already defined in LIBCMTD.lib(strncmp.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _atol already defined in LIBCMTD.lib(atox.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strstr already defined in LIBCMTD.lib(strstr.obj)
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Done Searching Libraries
Creating library Debug/winbuild.lib and object Debug/winbuild.exp
Searching Libraries
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\MSVCRT.lib:
Done Searching Libraries
LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library
Debug/winbuild.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.工程设置如下:
/nologo /MTd /W3 /Gm /GX /ZI /Od /I "include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"Debug/" /Fp"Debug/winbuild.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c nafxcwd.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 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib cv.lib cxcore.lib highgui.lib cvaux.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/winbuild.pdb" /debug /machine:I386 /nodefaultlib:"LIBCMTD.lib Nafxcwd.lib" /out:"Debug/winbuild.exe" /pdbtype:sept /verbose:lib 请大家帮我看看。如何解决。我已经在工程设置里面忽视了“LIBCMTD.lib”库了,为什么连接的时候还会连接它?上面的链接错误怎么解决?
Linking...
Searching Libraries
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\MSVCRT.lib:
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _memmove already defined in LIBCMTD.lib(memmove.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strncpy already defined in LIBCMTD.lib(strncpy.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strrchr already defined in LIBCMTD.lib(strrchr.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _ftell already defined in LIBCMTD.lib(ftell.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fseek already defined in LIBCMTD.lib(fseek.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fopen already defined in LIBCMTD.lib(fopen.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in LIBCMTD.lib(fclose.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _fread already defined in LIBCMTD.lib(fread.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _malloc already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _realloc already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _free already defined in LIBCMTD.lib(dbgheap.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _sprintf already defined in LIBCMTD.lib(sprintf.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strncmp already defined in LIBCMTD.lib(strncmp.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _atol already defined in LIBCMTD.lib(atox.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _strstr already defined in LIBCMTD.lib(strstr.obj)
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Done Searching Libraries
Creating library Debug/winbuild.lib and object Debug/winbuild.exp
Searching Libraries
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\MSVCRT.lib:
Done Searching Libraries
LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library
Debug/winbuild.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.工程设置如下:
/nologo /MTd /W3 /Gm /GX /ZI /Od /I "include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR"Debug/" /Fp"Debug/winbuild.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c nafxcwd.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 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib cv.lib cxcore.lib highgui.lib cvaux.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/winbuild.pdb" /debug /machine:I386 /nodefaultlib:"LIBCMTD.lib Nafxcwd.lib" /out:"Debug/winbuild.exe" /pdbtype:sept /verbose:lib 请大家帮我看看。如何解决。我已经在工程设置里面忽视了“LIBCMTD.lib”库了,为什么连接的时候还会连接它?上面的链接错误怎么解决?
解决方案 »
- fState[x][y] ^= 1;有关问题
- 困惑已久的删除文件问题,谢谢大家了!
- 请问,滚动条???
- 关于怎么用钩子取得一个程序使用的通信端口.急用....
- 在继承于CBCGPDockingControlBar的窗口中动态的创建一个Button,为什么不能响应消息?
- 文档类和视图类的联系
- 多个COM客户端连接到同一个EXE的COM服务器,服务器如何区分不同的客户端?
- 菜鸟求教:利用CView 来绘图,如何改变CView的大小而不影响Frame 的大小(当然Frame上会出现滚动条)??
- 急求三次样条插值程序
- 如何利用ipicture render在指定图像框内显示相同大小的jpg图片
- 100分,求一难题正解!
- 怎么把VC写的程序变成以控件的形式在IE里使用
谢谢各位的指导。我将/MTd 改为 /MD 之后,还是有错误,如下:
Linking...
Done Searching Libraries
LINK : warning LNK4098: defaultlib "msvcrtd.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
nafxcwd.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argv
nafxcwd.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argc
nafxcwd.lib(timecore.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(filelist.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(apphelp.obj) : error LNK2001: unresolved external symbol __mbctype
Debug/winbuild.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.winbuild.exe - 6 error(s), 1 warning(s)如果运行时库采用 /MTd ,忽略了MSVCRT.lib,则产生如下链接错误。
Linking...
Searching Libraries
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Done Searching Libraries
Creating library Debug/winbuild.lib and object Debug/winbuild.exp
Searching Libraries
Searching E:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB\nafxcwd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\kernel32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\user32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\gdi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\winspool.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comdlg32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\advapi32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\shell32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\ole32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\oleaut32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\uuid.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbc32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\odbccp32.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cv.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cxcore.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\highgui.lib:
Searching E:\PROGRAM FILES\OPENCV\LIB\cvaux.lib:
Searching .\lib\freetype235.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\libcpmtd.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wsock32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\LIBCMTD.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\OLDNAMES.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\comctl32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\olepro32.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\wininet.lib:
Searching E:\Program Files\Microsoft Visual Studio\VC98\LIB\imagehlp.lib:
Done Searching Libraries
LINK : warning LNK4049: locally defined symbol "_memmove" imported
LINK : warning LNK4049: locally defined symbol "_strncpy" imported
LINK : warning LNK4049: locally defined symbol "_strrchr" imported
LINK : warning LNK4049: locally defined symbol "_ftell" imported
LINK : warning LNK4049: locally defined symbol "_fseek" imported
LINK : warning LNK4049: locally defined symbol "_fopen" imported
LINK : warning LNK4049: locally defined symbol "_fclose" imported
LINK : warning LNK4049: locally defined symbol "_fread" imported
LINK : warning LNK4049: locally defined symbol "_malloc" imported
LINK : warning LNK4049: locally defined symbol "_realloc" imported
LINK : warning LNK4049: locally defined symbol "_free" imported
LINK : warning LNK4049: locally defined symbol "_sprintf" imported
LINK : warning LNK4049: locally defined symbol "_strncmp" imported
LINK : warning LNK4049: locally defined symbol "_atol" imported
LINK : warning LNK4049: locally defined symbol "_strstr" imported
freetype235.lib(ftbase.obj) : error LNK2001: unresolved external symbol __imp__longjmp
freetype235.lib(smooth.obj) : error LNK2001: unresolved external symbol __imp__longjmp
freetype235.lib(bdf.obj) : error LNK2001: unresolved external symbol __imp__qsort
freetype235.lib(psmodule.obj) : error LNK2001: unresolved external symbol __imp__qsort
freetype235.lib(psaux.obj) : error LNK2001: unresolved external symbol __imp__qsort
freetype235.lib(type1.obj) : error LNK2001: unresolved external symbol __imp__qsort
freetype235.lib(sfnt.obj) : error LNK2001: unresolved external symbol __imp__memchr
Debug/winbuild.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.winbuild.exe - 8 error(s), 15 warning(s)
总结:最终发现,是由于使用FreeType库和程序中使用的两个头文件 <afxwin.h> 和 <afxdlgs.h>冲突。解决方法是使用 /MDd 运行时库,并在 PROJECT->SETING->C/C++->PREPROCESSOR->定义 _AFXDLL
Run-Time Library是编译器提供的标准库,提供一些基本的库函数和系统调用。
我们一般使用的Run-Time Library是C Run-Time Libraries。当然也有Standard C++ libraries。
C Run-Time Libraries实现ANSI C的标准库。VC安装目录的CRT目录有C Run-Time库的大部分源代码。
C Run-Time Libraries有静态库版本,也有动态链接库版本;有单线程版本,也有多线程版本;还有调试和非调试版本。
可以在"project"-"settings"-"C/C++"-"Code Generation"中选择Run-Time Library的版本。
动态链接库版本:
/MD Multithreaded DLL 使用导入库MSVCRT.LIB
/MDd Debug Multithreaded DLL 使用导入库MSVCRTD.LIB
静态库版本:
/ML Single-Threaded 使用静态库LIBC.LIB
/MLd Debug Single-Threaded 使用静态库LIBCD.LIB
/MT Multithreaded 使用静态库LIBCMT.LIB
/MTd Debug Multithreaded 使用静态库LIBCMTD.LIB
C Run-Time Library的标准io部分与操作系统的关系很密切,在Windows上,CRT的io部分代码只是一个包装,底层要用到操作系统内核kernel32.dll中的函数,在编译时使用导入库kernel32.lib。这也就是为什么在嵌入式环境中,我们一般不能直接使用C标准库。
在Linux环境当然也有C标准库,例如:
ld -o output /lib/crt0.o hello.o -lc
参数"-lc"就是在引用C标准库libc.a。猜一猜"-lm"引用哪个库文件? 2、常见的编译参数
VC建立项目时总会定义"Win32"。控制台程序会定义"_CONSOLE",否则会定义"_WINDOWS"。Debug版定义"_DEBUG",Release版定义"NDEBUG" 。
与MFC DLL有关的编译常数包括:
_WINDLL 表示要做一个用到MFC的DLL
_USRDLL 表示做一个用户DLL(相对MFC扩展DLL而言)
_AFXDLL 表示使用MFC动态链接库
_AFXEXT 表示要做一个MFC扩展DLL
所以:
Regular, statically linked to MFC _WINDLL,_USRDLL
Regular, using the shared MFC DLL _WINDLL,_USRDLL,_AFXDLL
Extension DLL _WINDLL,_AFXDLL,_AFXEXT