none
在vs2008中使用SDL出现的问题,和SDL库有关 RRS feed

  • 问题

  • 1>MSVCRTD.lib(cinitexe.obj) : warning LNK4098: 默认库“msvcrt.lib”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
    1>SDLmain.lib(SDL_win32_main.obj) : error LNK2019: 无法解析的外部符号 _SDL_main,该符号在函数 _main 中被引用
    Debug\SDL_1.exe : fatal error LNK1120: 1 个无法解析的外部命令
    2011年8月1日 23:24

答案

  • 你好,

     

    链接器工具警告 LNK4098默认库“msvcrt.lib”与其他库的使用冲。意味着您在应用程序中,试图链接不同类型的运行库,例如混用了单线程运行库和多线程运行库。所以,请确认所有的项目以及文件都链接同一个运行库。你可以通过右键项目节点,并在C/C++->代码生成->运行库选项中设置您的运行库。

     

    此外你还可以通过设置/NODEFAULTLIB选项来忽略此警告,你可以通过以下步骤来设置:

    1.打开该项目的“属性页”对话框。。

    2.单击“链接器”文件夹。

    3.单击“输入”属性页。

    4.选择“忽略所有默认库”属性或在“忽略指定库”属性中指定要忽略的库列表。“命令行”属性页将显示对这些属性所做的更改的效果

     

    链接器工具警告LNK2019,提示您:链接器到了未定义的外部符号,造成这个原因可能是因为您没有正确链接您的引用库。请确认所有的引用库都已经被正确导入到项目之中。

     

     

    希望我的建议能够对您的以为有所帮助。


    Rob Pan [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 Rob Pan 2011年8月8日 9:43
    2011年8月3日 2:56