我正在尝试编译Visual Studio解决方案。我相信源文件没问题。我收到了一系列编译错误。
Visual Studio新安装。 我打开解决方案并运行构建,它有错误。 我去了Project,发现有一些缺失的功能。 我安装了它们: -
Windows XP Support for C++
Common Tools for Visual C++ 2015
Windows 8.1 SDK and Universal CRT SDK
Microsoft Foundation Classes for C++
然后我尝试构建解决方案,但收到错误通知我
Error C1083 Cannot open include file: 'vld.h': No such file or directory ...
我对此进行了研究,并设法弄清楚这是指Visual Leak Detector
我安装了那个。现在我面临的错误更少,但有数百条警告。我现在不太关心的警告。但我正试图解决错误,推动事态向前发展。
我现在遇到的错误是:
首先: -
Severity Code Description Project File Suppression State
Error (active) expected an identifier c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\string 666
Error (active) expected an expression c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\string 667
Error (active) expected a ';' c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\string 689
在字符串文件(包含这些错误)中,这是导致错误的代码部分:
// basic_string LITERALS
inline namespace literals {
inline namespace string_literals {
inline string operator "" s(const char *_Str, size_t _Len)
{ // construct literal from [_Str, _Str + _Len)
return (string(_Str, _Len));
}
inline wstring operator "" s(const wchar_t *_Str, size_t _Len)
{ // construct literal from [_Str, _Str + _Len)
return (wstring(_Str, _Len));
}
inline u16string operator "" s(const char16_t *_Str, size_t _Len)
{ // construct literal from [_Str, _Str + _Len)
return (u16string(_Str, _Len));
}
inline u32string operator "" s(const char32_t *_Str, size_t _Len)
{ // construct literal from [_Str, _Str + _Len)
return (u32string(_Str, _Len));
}
} // inline namespace string_literals
} // inline namespace literals
_STD_END
以上3行是根据编译器特别错误的: -
inline namespace literals { [line 666]
inline namespace string_literals { [line 667]
_STD_END [line 689]
然而,这是一个Microsoft Include,直接来自C ++的基础类,所以我不明白它为什么会产生这个错误。
其次
我收到此错误。
Error LNK1181 cannot open input file 'C:\Git\projectpath\Release\aspirata.lib' SymbolDumperUserDll C:\Git\projectpath\SymbolDumperUserDll\LINK 1
我已将路径名缩短为“项目路径”,以简化上述操作。
我自己已经完成了安装我上面提到的三个组件和VLD的想法。
最后的错误是指向发布目录中的.lib,所以我认为这可能与编译前面没有创建.lib文件有关,可能是由于上面的第一个错误?但我不太确定。
您能否建议我如何克服这些编译错误?