bfgroup / b2

B2 makes it easy to build C++ projects, everywhere.
https://www.bfgroup.xyz/b2/
Boost Software License 1.0
76 stars 228 forks source link

Cannot run bootstrap.bat with VC141 #346

Closed DISAPPEARED13 closed 7 months ago

DISAPPEARED13 commented 9 months ago

Make sure you completed the following tasks

Environment and version details

Brief problem description

I followed the guidance with boost installation. And I started to run bootstrap.bat after unzipping the zip. And some errors occurs like this:

D:\Libraries\setup\boost-1.83.0>bootstrap.bat vc141
Building Boost.Build engine
Found with vswhere [0x7FF85EE1E3B4] ANOMALY: use of REX.w is meaningless (default operand size is 64)
###
### Using 'vc141' toolset.
###

D:\Libraries\setup\boost-1.83.0\tools\build\src\engine>"cl" /nologo /MP /MT /TP /Feb2 /wd4996 /O2 /GL /EHsc   -DNDEBUG  builtins.cpp class.cpp command.cpp compile.cpp constants.cpp cwd.cpp debug.cpp debugger.cpp execcmd.cpp execnt.cpp execunix.cpp filent.cpp filesys.cpp fileunix.cpp frames.cpp function.cpp glob.cpp hash.cpp hcache.cpp hdrmacro.cpp headers.cpp jam.cpp jamgram.cpp lists.cpp make.cpp make1.cpp md5.cpp mem.cpp modules.cpp native.cpp object.cpp option.cpp output.cpp parse.cpp pathnt.cpp pathsys.cpp pathunix.cpp regexp.cpp rules.cpp scan.cpp search.cpp jam_strings.cpp startup.cpp subst.cpp sysinfo.cpp timestamp.cpp variable.cpp w32_getreg.cpp modules/order.cpp modules/path.cpp modules/property-set.cpp modules/regex.cpp modules/sequence.cpp modules/set.cpp /link kernel32.lib advapi32.lib user32.lib
[0x7FF85EE1E3B4] ANOMALY: use of REX.w is meaningless (default operand size is 64)
[0x7FF85EE1E3B4] ANOMALY: use of REX.w is meaningless (default operand size is 64)
[0x7FF85EE1E3B4] ANOMALY: use of REX.w is meaningless (default operand size is 64)
[0x7FF85EE1E3B4] ANOMALY: use of REX.w is meaningless (default operand size is 64)
[0x7FF85EE1E3B4] ANOMALY: use of REX.w is meaningless (default operand size is 64)
builtins.cpp
class.cpp
command.cpp
compile.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 builtins.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 compile.cpp)
constants.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 class.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 command.cpp)
cwd.cpp
debug.cpp
debugger.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 debug.cpp)
execcmd.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 debugger.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 cwd.cpp)
execnt.cpp
execunix.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 constants.cpp)
filent.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 execnt.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 execunix.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 filent.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 execcmd.cpp)
filesys.cpp
fileunix.cpp
frames.cpp
function.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 frames.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 function.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 filesys.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 fileunix.cpp)
glob.cpp
hash.cpp
hcache.cpp
hdrmacro.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 hdrmacro.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 glob.cpp)
headers.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 hcache.cpp)
jam.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 hash.cpp)
jamgram.cpp
lists.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 headers.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 jam.cpp)
make.cpp
make1.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 jamgram.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 lists.cpp)
md5.cpp
mem.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 make.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 make1.cpp)
modules.cpp
native.cpp
C:\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt.h(10): fatal error C1083: 无法打开包括文件: “vcruntime.h”: No such file or directory (编译源文件 md5.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 mem.cpp)
object.cpp
option.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 native.cpp)
output.cpp
parse.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 object.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 option.cpp)
pathnt.cpp
pathsys.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 output.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 parse.cpp)
pathunix.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 pathnt.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 pathsys.cpp)
regexp.cpp
rules.cpp
scan.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 regexp.cpp)
search.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 scan.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 pathunix.cpp)
jam_strings.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 rules.cpp)
startup.cpp
subst.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 search.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 jam_strings.cpp)
sysinfo.cpp
timestamp.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 startup.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 subst.cpp)
variable.cpp
w32_getreg.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 sysinfo.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 timestamp.cpp)
order.cpp
path.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 w32_getreg.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 variable.cpp)
property-set.cpp
regex.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules/path.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules/order.cpp)
sequence.cpp
set.cpp
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules/property-set.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules/regex.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules/set.cpp)
d:\libraries\setup\boost-1.83.0\tools\build\src\engine\config.h(45): fatal error C1083: 无法打开包括文件: “stdint.h”: No such file or directory (编译源文件 modules/sequence.cpp)

I have no idea why this happened, I have this stdint.h in my MSVC/tools/include directory, and I tried to copy the head file into the src/engine and not worked. I tried to include stdint.h in another project, and compiled with no errors.

Steps to reproduce the issue

just bootstrap.bat vc141

Actual behavior summary

When I run boost1.83.0 with TOOLSET vc141, errorC1083 is happening and I think it shouldn't.

If a project of yours is blocked due to this bug, please, mention it explicitly.

Attach, or place here, log output showing the bug including running
with the options: -d2 --debug-configuration

Expected behavior summary

I think b2.exe generated correct, should happen instead.

DISAPPEARED13 commented 9 months ago

b2.exe can be generated with Mingw, but cannot generate the correct lib with b2.exe, cannot find alot file, C1083 still occurs, cstddef: No such file or directory. Even I tried to run b2.exe with b2.exe toolset=msvc-14.1 address-model=64 I think it's reasonable, because I use MSVC not Mingw.

grafikrobot commented 9 months ago

Does it work if you only use bootstrap.bat? I.e. not specifying vc141.

grafikrobot commented 7 months ago

Building with vc141 has worked in previous versions and the current version (https://ci.appveyor.com/project/bfgroup/b2/build/job/f8vt40uqmnh732xp). I suspect there's a problem with your msvc install. Especially given the ANOMALY: use of REX.w is meaningless (default operand size is 64) messages you are getting.