Boost 1.57.0 bootstrap.bat不适用于Visual Studio.NET 2003

Boost 1.57.0 bootstrap.bat不适用于Visual Studio.NET 2003,boost,visual-studio-2003,bjam,b2,Boost,Visual Studio 2003,Bjam,B2,在仅安装了Visual Studio.NET 2003 SP1的开发计算机Vista SP1上 -使用boost 1.44.0,我可以使用bootstrap.bat生成b2.exe和bjam.exe -使用boost 1.57.0,我在运行bootstrap.bat时会收到此错误消息: Building Boost.Build engine Failed to build Boost.Build engine. Please consult bootstrap.log for furt

在仅安装了Visual Studio.NET 2003 SP1的开发计算机Vista SP1上

-使用boost 1.44.0,我可以使用bootstrap.bat生成b2.exe和bjam.exe
-使用boost 1.57.0,我在运行bootstrap.bat时会收到此错误消息:

    Building Boost.Build engine

Failed to build Boost.Build engine.
Please consult bootstrap.log for furter diagnostics.
这在cmd.exe或Visual Studio.NET 2003命令提示符下发生。

boostrap.log中有以下错误:

builtins.c(1885):错误C2065:“FSCTL\u GET\u repasse\u POINT”:未声明的标识符
builtins.c(1889):错误C2065:“IO\u重新分析\u标记\u符号链接”:未声明的标识符

内置.c包含

#ifdef OS_NT
#include <windows.h>
#ifndef FSCTL_GET_REPARSE_POINT
/* MinGW's version of windows.h is missing this, so we need
 * to include winioctl.h directly
 */
#include <winioctl.h>
#endif
#endif
#ifdef OS\n
#包括
#ifndef FSCTL\u获取\u重新分析\u点
/*MinGW版本的windows.h缺少此项,因此我们需要
*直接包括winioctl.h
*/
#包括
#恩迪夫
#恩迪夫
FSCTL_GET_repasse_POINT位于VS.NET2003提供的winioctl.h中

我想操作系统的定义是由于某种原因丢失的


注意:仍然参考VS.NET2003

我有WindowsXPSP3和MSVC2005,也有同样的问题。 在玩了一会儿之后,我在src/engine/jam.h中添加了以下内容:

#ifdef NT

#define _WIN32_WINNT 0x0501
#define IO_REPARSE_TAG_SYMLINK                  (0xA000000CL)

我还使用MSVC命令提示符为MSVC设置了所有设置,该修复程序在Visual Studio 2003中运行良好。不幸的是,下一步失败了;“\b2 toolset=msvc-7.1”已开始运行,但失败,并显示多条错误消息。我的印象是,VisualC++ 7.1不再支持构建库,尽管编译我的项目只使用BooSo1.7.0的标题已经很好了。