libreria c++ visual-studio-2005 boost 64bit boost-build

c++ - boost libreria



¿Cómo construyes las bibliotecas de x64 Boost en Windows? (3)

He creado las bibliotecas x86 Boost muchas veces, pero parece que no puedo construir bibliotecas x64. Comienzo el "Símbolo del sistema de herramientas cruzadas de Visual Studio 2005 x64" y ejecuto mi compilación habitual:

bjam --toolset=msvc --build-type=complete --build-dir=c:/build install

Pero todavía produce archivos .lib x86 (lo verifiqué con dumpbin / encabezados). ¿Qué estoy haciendo mal?


La respuesta aceptada es correcta. Agregue esto en caso de que alguien más busque esta respuesta y todavía no produzca la versión x64.

Lo siguiente es lo que tuve que hacer para compilar Boost 1.63 en VS 15 2017 Community Edition.

Comandos ejecutados desde el entorno VS shell de cmd. Herramientas -> Símbolo del sistema de Visual Studio

C:/Work/Boost_1_63> C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Auxiliary/Build/vcvarsall.bat amd64 C:/Work/Boost_1_63> bootstrap.bat C:/Work/Boost_1_63> bjam -j4 architecture=x86 address-model=64 link=static stage C:/Work/Boost_1_63> bjam --prefix=C:/opt/boost architecture=x86 address-model=64 link=static install

Puede verificar que el archivo .lib resultante sea x64 con dumpbin:

C:/Work> dumpbin /headers C:/work/boost_1_63/stage/lib/libboost_locale-vc140-mt-1_63.lib | findstr machine 8664 machine (x64) 8664 machine (x64) 8664 machine (x64) 8664 machine (x64) ...


Necesita agregar el parámetro address-model=64 .

Mira por ejemplo here .