这个肯定是用VC编译的。最简单的解决方案是进行如下设置:Project->Settings->General->Use MFC In a Static Library

解决方案 »

  1.   

    嘿嘿只要Project->Settings->C/C++->Code Generation->Use run-time library
    不要选Single Threaded就行了。
      

  2.   

    libcmt.lib
    msvcrt.lib
    你的程序要用这两个库中的一个。
      

  3.   

    高手们,搞定这个:http://www.csdn.net/Expert/topic/499/499189.shtm
      

  4.   

    先多谢各位大虾,但问题还未解决,究竟能不能用cl编译的阿?我先加点分吧。
    加了-MD 后有多了几个错误:
    nafxcw.lib(apphelp.obj) : error LNK2001: unresolved external symbol __mbctyp
    nafxcw.lib(filelist.obj) : error LNK2001: unresolved external symbol __mbcty
    nafxcw.lib(timecore.obj) : error LNK2001: unresolved external symbol __mbcty
    nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argv
    nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argc
      

  5.   

    用-MT 则变成这样:
    LINK : warning LNK4089: all references to "ADVAPI32.dll" discarded by /OPT:REF
    LINK : warning LNK4089: all references to "SHELL32.dll" discarded by /OPT:REF
    LINK : warning LNK4089: all references to "comdlg32.dll" discarded by /OPT:REF
      

  6.   

    这个程序是UniCode的吧。可能需要 
    /DUNICODE 或 /D_UNICODE
      

  7.   

    只有warning不就是已经通过了。
    这三个warning根本就不是错误,只是优化。
      

  8.   

    你看一下makefile中的描述,将参数提取一下:CPP_PROJ=/nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"$(INTDIR)\Telsrv.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c 
    BSC32=bscmake.exe
    BSC32_FLAGS=/nologo /o"$(OUTDIR)\Telsrv.bsc" 
    BSC32_SBRS= 
    LINK32=link.exe
    LINK32_FLAGS=ws2_32.lib /nologo /subsystem:console /incremental:no /pdb:"$(OUTDIR)\Telsrv.pdb" /machine:I386 /out:"$(OUTDIR)\Telsrv.exe" 
    LINK32_OBJS=  "$(INTDIR)\TelSrv.obj"