library c++ boost

c++ - library - Building Boost BCP



boost windows binary (4)

Intenté construir Bibliotecas Boost C ++ durante las últimas dos horas y me detuve sin ningún resultado. Como soy nuevo en C ++, no puedo obtener la compilación correcta. ¿Cómo puedo construirlo correctamente usando Visual Studio 2008?

Necesito usar la herramienta BCP para extraer un subconjunto de la biblioteca. Entonces necesito construir BCP primero, ¿verdad? ¿Como hacer esto? Cuando traté de compilarlo, recibí el siguiente error

error fatal LNK1104: no se puede abrir el archivo ''libboost_filesystem-vc90-mt-gd-1_37.lib''.

¿Dónde puedo obtener el archivo de biblioteca dado anteriormente?


Extraje la fuente: https://github.com/district10/cmake-bcp (No es necesario configurar BOOST, ya que todo el código fuente ya está incluido).

En Linux, cmake + make to build:

# cd source_dir mkdir build && cd build cmake .. make

En Windows: CMake-GUI + Visual Studio para compilar. ¿Necesitas ayuda? Vea HOWTO: Win + CMake + Visual Studio 2010 .

Mis ejecutables:

Consejo: Si encuentra problemas de vinculación en Windows al usar Boost, vaya a boost/config/auto_link.hpp y lo entenderá. Para resolver esto, puede comentar todo el archivo.


La versión actual de Boost (1.50.0) usa Boost.Build. El nuevo flujo de trabajo para construir bcp es el siguiente:

desde el directorio raíz de Boost, escriba:

bootstrap.bat

Luego, una vez que se haya construido Boost.Build, escriba:

b2 tools/bcp


Tenga en cuenta que no necesita construir sus versiones de Windows de bcp desde el origen; también puede descargar una versión binaria de http://www.boostpro.com/download , y omitir todos esos pasos.

(O, al menos, ese es el caso en teoría, no lo he intentado, simplemente encontré esa página y esta mientras buscaba una versión de Linux pre construida).


En primer lugar, debe tener las variables de entorno PATH, INCLUDE y LIB adecuadas en su shell de comandos. Para esto, llame al archivo " vcvarsall.bat " (o similar) con el parámetro:

vcvarsall.bat x86

Luego tienes que compilar bjam (también puedes descargarlo desde la página de Boost, pero es casi igual de rápido). Vaya a la carpeta tools/jam/src en Boost y escriba:

build.bat

Debería producir una subcarpeta bin.ntx86 que contenga bjam.exe. Para su comodidad, cópielo en la carpeta principal de Boost. Luego, puedes construir bcp. Vaya a la carpeta tools/bcp y escriba:

../../bjam.exe --toolset=msvc

De vuelta en la carpeta principal de Boost puedes construir cualquier biblioteca que desees:

bjam toolset=msvc –-with-{library}

donde {library} es una de las bibliotecas para construir. Todas las bibliotecas edificables se pueden mostrar con:

bjam –-show-libraries

Hay muchos más parámetros de compilación bjam. Algunos parámetros con palabras clave que puede especificar son:

variant=debug|release link=shared|static threading=multi|single

Un ejemplo sería:

bjam toolset=msvc –-with-filesystem threading=multi variant=debug stage

Para obtener más información, visite las páginas de documentación de Boost .

Editar: Enlace actualizado para apuntar a la documentación más reciente de Boost

Editar: opciones corregidas --with- {library} y --show-libraries