Visual Studio 2015无法链接大于2G的静态库。
错误是:
找不到* .lib文件。
我的问题是:它的目的是什么?如果是这样,为什么?
答案 0 :(得分:2)
32位工具只能使用2 GB的虚拟地址空间(尽管它们是/LARGEADDRESSAWARE
,因此技术上在64位操作系统上可以获得3 GB的虚拟空间)。因此,链接器可能只是耗尽这么大的库上的虚拟地址空间。
解决方案是使用x64本机工具而不是32位工具。
设置环境变量:
set PreferredToolArchitecture=x64
或编辑vcxproj,在<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup>
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
</PropertyGroup>
有关32位与64位应用程序中虚拟地址空间限制的详细信息,请参阅Sponsored Feature: RAM, VRAM, and More RAM: 64-Bit Gaming Is Here。