c++ visual-studio-2008 boost

c++ - Versión de 64 bits de Boost para ventanas de 64 bits



boost download (5)

¿Hay una versión de la biblioteca Boost de 64 bits para VS2008? ¿O tengo que compilar uno yo mismo? si, entonces, ¿alguien tiene experiencia con eso?


ACTUALIZACIÓN (19.09.2017): líneas de script añadidas para VS2017. Tenga en cuenta que Boost es compatible con el compilador VS2017 de una cierta versión anterior. Usé la última versión (1.65.1).

Utilicé estos scripts para aumentar las plataformas x64 y x86, lib y dll, depurar y lanzar para VS2017, VS2015 y VS2013:

md stage/VS2017/x64 md stage/VS2015/x64 md stage/VS2013/x64 b2 --stagedir=./stage/VS2017/x64 address-model=64 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=debug b2 --stagedir=./stage/VS2017/x64 address-model=64 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=release b2 --stagedir=./stage/VS2015/x64 address-model=64 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=debug b2 --stagedir=./stage/VS2015/x64 address-model=64 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=release b2 --stagedir=./stage/VS2013/x64 address-model=64 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=debug b2 --stagedir=./stage/VS2013/x64 address-model=64 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=release md stage/VS2017/win32 md stage/VS2015/win32 md stage/VS2013/win32 b2 --stagedir=./stage/VS2017/win32 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=debug b2 --stagedir=./stage/VS2017/win32 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=release b2 --stagedir=./stage/VS2015/win32 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=debug b2 --stagedir=./stage/VS2015/win32 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=release b2 --stagedir=./stage/VS2013/win32 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=debug b2 --stagedir=./stage/VS2013/win32 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=release pause

Puede hacer un archivo .bat y ejecutarlo para construir sus binarios de refuerzo.


Como una respuesta corta:

bjam --toolset=msvc-9.0 address-model=64 --build-type=complete

Como respuesta más larga, aquí están mis notas de compilación para tener librerías VS .NET 2008 de 32 bits y de refuerzo de 64 bits en la misma jerarquía (que sospecho que es un caso de uso común):

  1. Construye los binarios win32

    bjam --toolset=msvc-9.0 --build-type=complete stage

  2. Crea el directorio lib / win32

  3. Mueva los contenidos de stage / lib a lib / win32
  4. Elimina los directorios bin.v2 y stage
  5. Construye los binarios x64

    bjam --toolset=msvc-9.0 address-model=64 --build-type=complete stage

  6. Crea el directorio lib / x64

  7. Mueva el contenido de stage / lib a lib / x64
  8. Elimina los directorios bin.v2 y stage

En este momento, los binarios de 64 bits proporcionados por teeks99 (ver otra respuesta) parecen ser los únicos binarios gratuitos de 64 bits. Por un tiempo, BoostPro también proporcionó binarios de 64 bits, pero a partir de 1.51 parecen estar fuera o por negocios.

Entonces, de nuevo volvemos a dos opciones: los binarios de teeks99, o construyendo el suyo propio.

La mayor parte de la información que necesitaba para construir la mía estaba aquí: https://.com/a/2655683/613288

Lo único que faltaba era cómo hacer que esto funcione con la versión gratuita de Visual Studio 2010 Express. Encontré esa pieza faltante en otro lado, y después de una personalización, la receta final que utilicé para mi compilación de los impulsores 1.49.0 fue:

Inicie Visual C ++, y desde el menú Herramientas, inicie el símbolo del sistema de Visual Studio.

En la ventana de la consola, haz lo siguiente:

"C:/Program Files/Microsoft SDKs/Windows/v7.1/Bin/setenv.cmd" /Release /x64

y luego en el directorio de impulso:

bootstrap.bat b2 -a -sBZIP2_SOURCE="C:/bzip2-1.0.6" -sZLIB_SOURCE="C:/zlib-1.2.5" --toolset=msvc-10.0 architecture=x86 address-model=64 link=static --with-date_time --with-filesystem --with-serialization --with-test --with-thread --with-system --with-regex --with-iostreams stage

El último comando está personalizado para lo que sucedió que necesitaba (solo algunas bibliotecas vinculadas estáticamente).


Me hice un pequeño script que compila todos para VS2005 y VS2008:

md stage/lib/win32 md stage/lib/x64 REM Visual Studio 2005 bjam --toolset=msvc-8.0 --build-type=complete stage move /Y stage/lib/* stage/lib/win32/ bjam --toolset=msvc-8.0 address-model=64 --build-type=complete stage move /Y stage/lib/* stage/lib/x64/ REM Visual Studio 2008 bjam --toolset=msvc-9.0 --build-type=complete stage move /Y stage/lib/* stage/lib/win32/ bjam --toolset=msvc-9.0 address-model=64 --build-type=complete stage move /Y stage/lib/* stage/lib/x64/