Man*_*ier 7 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 furter diagnostics.
Run Code Online (Sandbox Code Playgroud)
这是从cmd.exe或Visual Studio .NET 2003命令提示符发生的.
我在boostrap.log中有这些错误:
builtins.c(1885):错误C2065:'FSCTL_GET_REPARSE_POINT':未声明的标识符builtins.c
(1889):错误C2065:'IO_REPARSE_TAG_SYMLINK':未声明的标识符
builtins.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
Run Code Online (Sandbox Code Playgroud)
和FSCTL_GET_REPARSE_POINT在VS .NET 2003提供的winioctl.h中
我想OS_NT定义由于某种原因缺失了?
注意:Boost 1.57.0 windows文档 仍然引用VS .NET 2003
我有WindowsXP SP3和MSVC 2005并遇到了同样的问题.经过一段时间的游戏后,我将以下内容添加到src/engine/jam.h中:
#ifdef NT
#define _WIN32_WINNT 0x0501
#define IO_REPARSE_TAG_SYMLINK (0xA000000CL)
Run Code Online (Sandbox Code Playgroud)
我还使用MSVC命令提示符为MSVC设置了所有内容
| 归档时间: |
|
| 查看次数: |
1256 次 |
| 最近记录: |