boostorg / boostorg/build

Build fails on current master with debug-store=database (regression from 1.75)

Open
#710 4 comments 0 reactions 0 assignees View on GitHub
transition
Dominant language
C++
Stars
251
Forks
63
PR merge metrics
No merged PRs in 30d

Description

Operating System: Windows 1809
Compiler: Microsoft (R) C/C++ Optimizing Compiler Version 19.16.27045 for x64 (which is VS2017's compiler shipped with VS2019).

I compile boost as decribed [here](https://github.com/boostorg/build/issues/269) via:
```batch
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvarsall.bat" x64 -vcvars_ver=14.16
.\bootstrap.bat
.\b2 toolset=msvc-14.1 -j8 architecture=x86 runtime-link=shared variant=debug,release --without-mpi --without-python --without-graph_parallel --stagedir=stage64 debug-symbols=on debug-store=database cflags=/FS pch=off --hash address-model=64 stage
```
This works perfectly fine with the current release boost-1.75 but is broken on the [current master](https://github.com/boostorg/boost/commit/f0b58842ae3de5212fd2770fad2573116a9eeb19) which is [this commit](https://github.com/boostorg/build/commit/76da80f33187a3d9e5336157cdfae12ce82e37eb) in boost.build.

I get lots of error messages like this one:

> fatal error C1041: cannot open program database 'D:\lib\boost_f0b58842\bin.v2\libs\wave\build\faa0db243f6e360880aded34dd7ff9cb\libboost_wave-vc141-mt-x64-1_76.pdb'; if multiple CL.EXE write to the same .PDB file, please use /FS

It seems the cflags=/FS are no longer passed correctly to the compiler.

Avoiding `debug-store=database` still works ... but comes without PDBs
```batch
.\b2 toolset=msvc-14.1 -j8 architecture=x86 runtime-link=shared variant=debug,release --without-mpi --without-python --without-graph_parallel --stagedir=stage64 debug-symbols=on pch=off --hash address-model=64 stage
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.