Como criar o Boost 1.55 com o Visual Studio 2013?

Estou tentando criar o Boost 1.55 com o Visual Studio 2013.

1) Tentei usar binários dinâmicos (binários de reforço), mas o Visual Studio escreveu sobre o erro quando tentei compilar:

erro LNK1104: não é possível abrir o arquivo 'libboost_serialization-vc120-mt-gd-1_55.lib'. Usei boost_1_55_0-msvc-12.0-32.exe ou 1.55.0-build2 (binários de reforço).

Não encontrei esse arquivo .lib no diretório boost_1_55_0 \ lib32-msvc-12.0.

2) Eu também tentei usar este programa BlueGo 0.1.7 (BlueGo) Funciona muito bem e cria todas as bibliotecas necessárias.

O problema é que ele cria arquivos .lib como este:

libboost_serialization-vc110-mt-gd-1_55.lib

Mas eu uso o Visual Studio 2013 e é necessário usar a versão vc120 do compilador em vez de vc110; caso contrário, ele gera um erro.

3) No final, decidi criar arquivos DLL / lib por conta própria.

Eu usei o seguinte guia no site do impulso:Construção simplificada da fonte.

Se você deseja criar a partir da fonte com o Visual C ++, você pode usar um procedimento simples de compilação descrito nesta seção. Abra o prompt de comando e altere seu diretório atual para o diretório raiz do Boost. Em seguida, digite os seguintes comandos:

bootstrap
.\b2

Acima, escrevi o que precisava fazer.

Lancei o "Prompt de Comando das Ferramentas Nativas do VS2012 x86", mudei o diretório para o diretório raiz do impulso e digitei o comando:

bootstrap

Imediatamente eu recebi o erro:

C:\thirdparty\vs2013\x86\boost_1_55_0>.\bootstrap.bat
Building Boost.Build engine

Failed to build Boost.Build engine.
Please consult bootstrap.log for furter diagnostics.

You can try to obtain a prebuilt binary from

   http://sf.net/project/showfiles.php?group_id=7586&package_id=72941

Also, you can file an issue at http://svn.boost.org
Please attach bootstrap.log in that case.

No arquivo de log, observei o seguinte erro:

execnt.c (56): erro fatal C1083: Não é possível abrir o arquivo de inclusão: 'tlhelp32.h': esse arquivo ou diretório não existe

O arquivo bootstrap.log:

###
### Using 'vc12' toolset.
###

C:\thirdparty\vs2013\x86\boost_1_55_0\tools\build\v2\engine>if exist bootstrap rd /S /Q bootstrap 

C:\thirdparty\vs2013\x86\boost_1_55_0\tools\build\v2\engine>md bootstrap 

C:\thirdparty\vs2013\x86\boost_1_55_0\tools\build\v2\engine>cl /nologo /RTC1 /Zi /MTd /Fobootstrap/ /Fdbootstrap/ -DNT -DYYDEBUG -wd4996 kernel32.lib advapi32.lib user32.lib /Febootstrap\jam0  command.c compile.c constants.c debug.c execcmd.c execnt.c filent.c frames.c function.c glob.c hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c object.c option.c output.c parse.c pathnt.c pathsys.c regexp.c rules.c scan.c search.c subst.c timestamp.c variable.c modules.c strings.c filesys.c builtins.c md5.c class.c cwd.c w32_getreg.c native.c modules/set.c modules/path.c modules/regex.c modules/property-set.c modules/sequence.c modules/order.c 
command.c
compile.c
constants.c
debug.c
execcmd.c
execnt.c
execnt.c(56) : fatal error C1083: Cannot open include file: 'tlhelp32.h': No such file or directory
filent.c
frames.c
function.c
glob.c
hash.c
hdrmacro.c
headers.c
jam.c
jambase.c
jamgram.c
lists.c
make.c
make1.c
object.c
Generating Code...
Compiling...
option.c
output.c
parse.c
pathnt.c
pathsys.c
regexp.c
rules.c
scan.c
search.c
subst.c
timestamp.c
variable.c
modules.c
strings.c
filesys.c
builtins.c
md5.c
class.c
cwd.c
w32_getreg.c
Generating Code...
Compiling...
native.c
set.c
path.c
regex.c
property-set.c
sequence.c
order.c
Generating Code...

Tentei verificar se este arquivo existia ou não ('tlhelp32.h'). Criei um projeto e incluí o arquivo ('tlhelp32.h'). É compilado sem erros.

4) Também tentei renomear

libboost_serialization-vc110-mt-gd-1_55.lib

para

libboost_serialization-vc120-mt-gd-1_55.lib

Mas o Visual Studio lançou o erro novamente.

Error   1   error LNK1104: cannot open file 'libboost_serialization-vc120-mt-gd-1_55.lib'.

Você poderia me dizer qual é o problema e como criar o Boost 1.55 com o Visual Studio 2013?

Desde já, obrigado!

questionAnswers(5)

yourAnswerToTheQuestion