gpt4 book ai didi

c++ - 无法在 Visual Studio Community 2015 中编译基本程序(LNK2019 - MSVCRTD.lib)

转载 作者:可可西里 更新时间:2023-11-01 11:48:56 28 4
gpt4 key购买 nike

我在从未安装过任何 IDE/开发工具的全新 Win10 安装上安装了 Visual Studio Community 2015。

我创建了一个空的c++项目,添加了main.cpp,将入口点设置为main并添加了:

void main()
{

}

VS2013 上我可以毫无问题地做到这一点。我遇到了我无法弄清楚的链接器错误:

Severity    Code    Description File    Line
Error LNK2019 unresolved external symbol __CrtDbgReport referenced in function __CRT_RTC_INIT C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_init_.obj) 1
Error LNK2019 unresolved external symbol __CrtDbgReportW referenced in function __CRT_RTC_INITW C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_init_.obj) 1
Error LNK2019 unresolved external symbol ___stdio_common_vsprintf_s referenced in function __vsprintf_s_l C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_error_.obj) 1
Error LNK2019 unresolved external symbol __wmakepath_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned int)" (?GetPdbDllPathFromFilePath@@YAHPB_WPA_WI@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_pdblkup_.obj) 1
Error LNK2019 unresolved external symbol __wsplitpath_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned int)" (?GetPdbDllPathFromFilePath@@YAHPB_WPA_WI@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_pdblkup_.obj) 1
Error LNK2019 unresolved external symbol _wcscpy_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned int)" (?GetPdbDllPathFromFilePath@@YAHPB_WPA_WI@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_pdblkup_.obj) 1
Error LNK2019 unresolved external symbol ___vcrt_GetModuleFileNameW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" (?GetPdbDll@@YAPAUHINSTANCE__@@XZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_pdblkup_.obj) 1
Error LNK2019 unresolved external symbol ___vcrt_GetModuleHandleW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" (?GetPdbDll@@YAPAUHINSTANCE__@@XZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_pdblkup_.obj) 1
Error LNK2019 unresolved external symbol ___vcrt_LoadLibraryExW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" (?GetPdbDll@@YAPAUHINSTANCE__@@XZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_pdblkup_.obj) 1
Error LNK2019 unresolved external symbol __except_handler4_common referenced in function __except_handler4 C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(_chandler4gs_.obj) 1
Error LNK1120 10 unresolved externals C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\Debug\ConsoleApplication1.exe 1

更新:

我更改了两个配置属性:

  • 链接器> 输入> 忽略所有默认库> 是(/NODEFAULTLIB)
  • C/C++> 代码生成> 基本运行时检查> 默认

这让我构建了上面的代码,但是在添加了一些其他琐碎的代码之后,我遇到了很多其他问题:

#include <string>

using namespace std;

void main()
{
string blah = "string";
}

包含一个标准库应该是微不足道的,但是:

Severity    Code    Description File    Line
Error LNK2019 unresolved external symbol "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) referenced in function "void * __cdecl std::_Allocate(unsigned int,unsigned int,bool)" (?_Allocate@std@@YAPAXII_N@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) referenced in function "void __cdecl std::_Deallocate(void *,unsigned int,unsigned int)" (?_Deallocate@std@@YAXPAXII@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol __imp___invalid_parameter referenced in function "void * __cdecl std::_Allocate(unsigned int,unsigned int,bool)" (?_Allocate@std@@YAPAXII_N@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "__declspec(dllimport) public: __thiscall std::_Lockit::_Lockit(int)" (__imp_??0_Lockit@std@@QAE@H@Z) referenced in function "public: void __thiscall std::_Container_base12::_Orphan_all(void)" (?_Orphan_all@_Container_base12@std@@QAEXXZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "__declspec(dllimport) public: __thiscall std::_Lockit::~_Lockit(void)" (__imp_??1_Lockit@std@@QAE@XZ) referenced in function "public: void __thiscall std::_Container_base12::_Orphan_all(void)" (?_Orphan_all@_Container_base12@std@@QAEXXZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol _memcpy referenced in function "public: static char * __cdecl std::char_traits<char>::copy(char *,char const *,unsigned int)" (?copy@?$char_traits@D@std@@SAPADPADPBDI@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol __imp__memmove referenced in function "public: static char * __cdecl std::char_traits<char>::move(char *,char const *,unsigned int)" (?move@?$char_traits@D@std@@SAPADPADPBDI@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol _strlen referenced in function "public: static unsigned int __cdecl std::char_traits<char>::length(char const *)" (?length@?$char_traits@D@std@@SAIPBD@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol __imp___CrtDbgReportW referenced in function "void * __cdecl std::_Allocate(unsigned int,unsigned int,bool)" (?_Allocate@std@@YAPAXII_N@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "__declspec(dllimport) void __cdecl std::_Debug_message(wchar_t const *,wchar_t const *,unsigned int)" (__imp_?_Debug_message@std@@YAXPB_W0I@Z) referenced in function "void __cdecl std::_Debug_pointer<char const >(char const *,wchar_t const *,unsigned int)" (??$_Debug_pointer@$$CBD@std@@YAXPBDPB_WI@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "__declspec(dllimport) void __cdecl std::_Xbad_alloc(void)" (__imp_?_Xbad_alloc@std@@YAXXZ) referenced in function "void * __cdecl std::_Allocate(unsigned int,unsigned int,bool)" (?_Allocate@std@@YAPAXII_N@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "__declspec(dllimport) void __cdecl std::_Xlength_error(char const *)" (__imp_?_Xlength_error@std@@YAXPBD@Z) referenced in function "public: void __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Xlen(void)const " (?_Xlen@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEXXZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol "__declspec(dllimport) void __cdecl std::_Xout_of_range(char const *)" (__imp_?_Xout_of_range@std@@YAXPBD@Z) referenced in function "public: void __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Xran(void)const " (?_Xran@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEXXZ) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol @__security_check_cookie@4 referenced in function __unwindfunclet$??0?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QAE@ABV?$allocator@D@1@@Z$0 C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol __CxxThrowException@8 referenced in function __catch$?_Copy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXII@Z$1 C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol ___CxxFrameHandler3 referenced in function __unwindfunclet$??0?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QAE@ABV?$allocator@D@1@@Z$0 C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2019 unresolved external symbol ___security_cookie referenced in function "public: __thiscall std::_String_alloc<struct std::_String_base_types<char,class std::allocator<char> > >::_String_alloc<struct std::_String_base_types<char,class std::allocator<char> > >(class std::allocator<char> const &)" (??0?$_String_alloc@U?$_String_base_types@DV?$allocator@D@std@@@std@@@std@@QAE@ABV?$allocator@D@1@@Z) C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\main.obj 1
Error LNK2001 unresolved external symbol __load_config_used C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\ConsoleApplication1\LINK 1
Error LNK1120 18 unresolved externals C:\Users\[user]\Desktop\VS_TEST\ConsoleApplication1\Debug\ConsoleApplication1.exe 1

最佳答案

好吧,我明白了,但这引出了另一个问题。

问题是 我在 Linker 中定义 /ENTRY:Main > Advanced> 入口点 除了入口点是Main 而不是main

所有路径/库都井井有条,令人惊讶。我撤消了问题中“更新:”行下提到的配置更改 - 这不是问题所在。 p>

真正奇怪的是,我绝对可以在 Visual Studio 2013(我从中迁移了项目)中完全按照上述方式进行操作。也许更奇怪.. 我还有另一个项目,我也以同样的方式迁移了 alsoMain 明确声明为入口点,但它没有收到链接器的投诉.

关于c++ - 无法在 Visual Studio Community 2015 中编译基本程序(LNK2019 - MSVCRTD.lib),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35607238/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com