Boost logo

Boost :

Subject: [boost] Build errors with msvc/release/pdb
From: Christoph Macheiner (christoph.macheiner_at_[hidden])
Date: 2012-11-15 10:50:42


The following libraries generate errors when using msvc, building for
release and generating the program debug database: date_time, locale, math
(all), thread, wave. Except for math, this seems to be caused by having at
least one directory specified in the /Fd option.
Also, there are 251 .pdb files in the boost root directory instead of their
respective output directory (presumably from serialization, unit_test, math,
and most probably others).

The command-line is:
bjam link=shared runtime-link=shared
variant=release --layout=system --stagedir=.\stage stage debug-symbols=on
debug-store=database

I am at a loss on how to fix this. Can someone help?

On a related note, the .pdb files are automatically generated when building
for debug. Is there an easy switch somewhere in the sources, so that I can
turn this on globally also for release as a work-around?

For reference, below is the output for the first file for each library, plus
contents of the corresponding .rsp file

Thanks, Christoph.

========================================
compile-c-c++
bin.v2\libs\date_time\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\gregorian\greg_month.obj
greg_month.cpp
libs\date_time\src\gregorian\greg_month.cpp : fatal error C1033: cannot open
program database 'd:\dev\boost_1_52_0\gregorian\greg_month.pdb'

    call "C:\Program Files (x86)\Microsoft Visual Studio
11.0\VC\vcvarsall.bat" x86 >nul
cl /Zm800 -nologo
@"bin.v2\libs\date_time\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\gregorian\greg_month.obj.rsp"
----------------------------------------
"libs\date_time\src\gregorian\greg_month.cpp" -Fo"bin.v2\libs\date_time\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\gregorian\greg_month.obj"
/Fd"gregorian\greg_month.pdb" -TP /O2 /Zi /Ob2 /W3 /GR /MD /Zc:forScope
/Zc:wchar_t /wd4675 /EHs -c
-DBOOST_ALL_DYN_LINK=1
-DBOOST_ALL_NO_LIB=1
-DDATE_TIME_INLINE
-DNDEBUG
"-I."
========================================
compile-c-c++
bin.v2\libs\locale\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\encoding\codepage.obj

codepage.cpp
libs\locale\src\encoding\codepage.cpp : fatal error C1033: cannot open
program database 'd:\dev\boost_1_52_0\encoding\codepage.pdb'

    call "C:\Program Files (x86)\Microsoft Visual Studio
11.0\VC\vcvarsall.bat" x86 >nul
cl /Zm800 -nologo
@"bin.v2\libs\locale\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\encoding\codepage.obj.rsp"
----------------------------------------
"libs\locale\src\encoding\codepage.cpp" -Fo"bin.v2\libs\locale\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\encoding\codepage.obj"
/Fd"encoding\codepage.pdb" -TP /O2 /Zi /Ob2 /W3 /GR /MD /Zc:forScope
/Zc:wchar_t /wd4675 /EHs -c
-DBOOST_ALL_NO_LIB=1
-DBOOST_LOCALE_DYN_LINK=1
-DBOOST_LOCALE_NO_POSIX_BACKEND=1
-DBOOST_SYSTEM_DYN_LINK=1
-DBOOST_THREAD_NO_LIB=1
-DNDEBUG
"-I."
========================================
compile-c-c++
bin.v2\libs\math\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\assoc_laguerre.obj
assoc_laguerre.cpp
libs\math\build\..\src\tr1\assoc_laguerre.cpp(6) : error C2858: command-line
option 'program database name (/Fdd:\dev\boost_1_52_0\assoc_laguerre.pdb)'
inconsistent with precompiled header, which used
'/Fdd:\dev\boost_1_52_0\vc110.pdb'
libs\math\build\..\src\tr1\assoc_laguerre.cpp(6) : error C2859:
d:\dev\boost_1_52_0\assoc_laguerre.pdb is not the pdb file that was used
when this precompiled header was created, recreate the precompiled header.

    call "C:\Program Files (x86)\Microsoft Visual Studio
11.0\VC\vcvarsall.bat" x86 >nul
cl /Zm800 -nologo
@"bin.v2\libs\math\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\assoc_laguerre.obj.rsp"
----------------------------------------
"libs\math\build\..\src\tr1\assoc_laguerre.cpp" -Fo"bin.v2\libs\math\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\assoc_laguerre.obj"
/Fd"assoc_laguerre.pdb" -Yu"pch.hpp" -Fp"bin.v2\libs\math\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\pch.pch"
 -TP /O2 /Zi /Ob2 /W3 /GR /MD /Zc:forScope /Zc:wchar_t /wd4675 /EHs -c
-DBOOST_ALL_NO_LIB=1
-DBOOST_BUILD_PCH_ENABLED
-DBOOST_MATH_TR1_DYN_LINK=1
-DNDEBUG
"-I."
"-Ilibs\math\src\tr1"
========================================
compile-c-c++
bin.v2\libs\thread\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\win32\thread.obj
thread.cpp
libs\thread\src\win32\thread.cpp : fatal error C1033: cannot open program
database 'd:\dev\boost_1_52_0\win32\thread.pdb'

    call "C:\Program Files (x86)\Microsoft Visual Studio
11.0\VC\vcvarsall.bat" x86 >nul
cl /Zm800 -nologo
@"bin.v2\libs\thread\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\win32\thread.obj.rsp"
----------------------------------------
"libs\thread\src\win32\thread.cpp" -Fo"bin.v2\libs\thread\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\win32\thread.obj"
/Fd"win32\thread.pdb" -TP /O2 /Zi /Ob2 /W4 /GR /MD /Zc:forScope
/Zc:wchar_t /wd4675 /EHs -c
-DBOOST_ALL_NO_LIB=1
-DBOOST_SYSTEM_DYN_LINK=1
-DBOOST_SYSTEM_NO_DEPRECATED
-DBOOST_THREAD_BUILD_DLL=1
-DBOOST_THREAD_DONT_USE_CHRONO
-DBOOST_THREAD_THROW_IF_PRECONDITION_NOT_SATISFIED
-DNDEBUG
"-I."
========================================
compile-c-c++
bin.v2\libs\wave\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\cpplexer\re2clex\aq.obj

aq.cpp
libs\wave\src\cpplexer\re2clex\aq.cpp : fatal error C1033: cannot open
program database 'd:\dev\boost_1_52_0\cpplexer\re2clex\aq.pdb'

    call "C:\Program Files (x86)\Microsoft Visual Studio
11.0\VC\vcvarsall.bat" x86 >nul
cl /Zm800 -nologo
@"bin.v2\libs\wave\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\cpplexer\re2clex\aq.obj.rsp"
----------------------------------------
"libs\wave\src\cpplexer\re2clex\aq.cpp" -Fo"bin.v2\libs\wave\build\msvc-11.0\release\debug-store-database\debug-symbols-on\threading-multi\cpplexer\re2clex\aq.obj"
/Fd"cpplexer\re2clex\aq.pdb" -TP /O2 /Zi /Ob2 /W3 /GR /MD /Zc:forScope
/Zc:wchar_t /wd4675 /EHs -c
-DBOOST_ALL_DYN_LINK=1
-DBOOST_ALL_NO_LIB=1
-DNDEBUG
-D_CRT_SECURE_NO_DEPRECATE
-D_SCL_SECURE_NO_DEPRECATE
"-I."
========================================


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk