Visual Studio 2017 年建筑提升 1.64
building boost 1.64 for Visual Studio 2017
我无法在 VS2017 中使用 boost 1.64 库。
在这里编译成这样:
b2 toolset=msvc-14.1 --build-dir=.x86 --stagedir=stage_x86
在工作室我遇到这样的错误:
Error unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAABVerror_category@12@XZ)
我现在不知道该怎么办。
我试图编译 64 位并使用它。 --> 有相应的错误。行。
我是这样编译的:
b2
完全一样的错误。
Error unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAABVerror_category@12@XZ)
所有项目链接器选项:
/OUT:"E:\Yandex.Disk\Projects\OS\Release\OS.exe" /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"E:\Yandex.Disk\Projects\OS\Release\OS.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG:FULL /MACHINE:X86 /OPT:REF /SAFESEH /INCREMENTAL:NO /PGD:"E:\Yandex.Disk\Projects\OS\Release\OS.pgd" /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Release\OS.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"E:\boost_1_64_0\stage_x86\lib" /TLBID:1
据我了解,Microsoft 为简化 VS2017 的部署所做的更改导致 Boost Build 如何检测构建 Boost 所需的工具集的严重问题。我的猜测是这就是阻止官方支持 and/or 导致问题的原因。截至 2017 年 4 月,很明显检测 VS2017 仍然存在问题 - 例如参见 [=11=]。
在线信息表明存在使用 Powershell 的工作轮次,但至少可以说是非常重要的。建议等待此问题的任何人关注讨论,并向 Microsoft 表达为 Boost 1.65.0 解决此问题的紧迫性。我还没有亲自尝试这个 (notNeeded & notEnoughTime
),但我对解决方案非常感兴趣,如果它看起来已得到妥善解决,我会回来更新。
我无法在 VS2017 中使用 boost 1.64 库。 在这里编译成这样:
b2 toolset=msvc-14.1 --build-dir=.x86 --stagedir=stage_x86
在工作室我遇到这样的错误:
Error unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAABVerror_category@12@XZ)
我现在不知道该怎么办。 我试图编译 64 位并使用它。 --> 有相应的错误。行。 我是这样编译的:
b2
完全一样的错误。
Error unresolved external symbol "class boost::system::error_category const & __cdecl boost::system::system_category(void)" (?system_category@system@boost@@YAABVerror_category@12@XZ)
所有项目链接器选项:
/OUT:"E:\Yandex.Disk\Projects\OS\Release\OS.exe" /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"E:\Yandex.Disk\Projects\OS\Release\OS.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG:FULL /MACHINE:X86 /OPT:REF /SAFESEH /INCREMENTAL:NO /PGD:"E:\Yandex.Disk\Projects\OS\Release\OS.pgd" /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Release\OS.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"E:\boost_1_64_0\stage_x86\lib" /TLBID:1
据我了解,Microsoft 为简化 VS2017 的部署所做的更改导致 Boost Build 如何检测构建 Boost 所需的工具集的严重问题。我的猜测是这就是阻止官方支持 and/or 导致问题的原因。截至 2017 年 4 月,很明显检测 VS2017 仍然存在问题 - 例如参见 [=11=]。
在线信息表明存在使用 Powershell 的工作轮次,但至少可以说是非常重要的。建议等待此问题的任何人关注讨论,并向 Microsoft 表达为 Boost 1.65.0 解决此问题的紧迫性。我还没有亲自尝试这个 (notNeeded & notEnoughTime
),但我对解决方案非常感兴趣,如果它看起来已得到妥善解决,我会回来更新。