Comment déterminer la version Boost sur un système?

Existe-t-il un moyen rapide de déterminer la version des bibliothèques Boost C ++ sur un système?

Boostez les macros d’information . Vous avez besoin de: BOOST_VERSION

Testé avec boost 1.51.0:

 std::cout < < "Using Boost " << BOOST_VERSION / 100000 << "." // major version << BOOST_VERSION / 100 % 1000 << "." // minor version << BOOST_VERSION % 100 // patch level << std::endl; 

Sortie: Utiliser Boost 1.51.0

Testé avec les versions boost 1.51.0 à 1.65.0

Si vous avez seulement besoin de savoir pour vos propres informations, regardez simplement dans /usr/include/boost/version.hpp (Ubuntu 13.10) et lisez les informations directement

 #include  #include  #include  int main() { std::cout < < "Boost version: " << BOOST_VERSION / 100000 << "." << BOOST_VERSION / 100 % 1000 << "." << BOOST_VERSION % 100 << std::endl; return 0; } 

Mise à jour: la réponse a été corrigée.

Selon la manière dont vous avez installé boost et le système d’exploitation que vous utilisez, vous pouvez également essayer ce qui suit:

 dpkg -s libboost-dev | grep 'Version' 

Boost installé sur OS X en utilisant homebrew a souhaité le fichier version.hpp dans /usr/local/Cellar/boost//include/boost/version.hpp (notez que la version est déjà mentionnée dans path).

Je pense que le moyen le plus rapide de déterminer la version sur un système de type UNIX sera de rechercher le boost dans /usr :

find /usr -name "boost"

Pourrait être déjà répondu, mais vous pouvez essayer ce programme simple pour déterminer si et quelle installation de boost vous avez:

 #include #include using namespace std; int main() { cout<  

En ce qui me concerne, vous pouvez d’abord (trouver version.hpp, la variable de version y figure, si vous savez où elle se trouve (dans ubuntu, elle est généralement /usr/include/boost/version.hpp par défaut dans /usr/include/boost/version.hpp )):

  locate `boost/version.hpp` 

Deuxième spectacle c’est sa version par:

  grep BOOST_LIB_VERSION /usr/include/boost/version.hpp 

ou

  grep BOOST_VERSION /usr/include/boost/version.hpp. 

Quant à moi, j’ai deux versions boostées installées sur mon système. Sortie comme ci-dessous:

 xy@xy:~$ locate boost/version.hpp |grep boost /home/xy/boost_install/boost_1_61_0/boost/version.hpp /home/xy/boost_install/lib/include/boost/version.hpp /usr/include/boost/version.hpp xy@xy:~$ grep BOOST_VERSION /usr/include/boost/version.hpp #ifndef BOOST_VERSION_HPP #define BOOST_VERSION_HPP // BOOST_VERSION % 100 is the patch level // BOOST_VERSION / 100 % 1000 is the minor version // BOOST_VERSION / 100000 is the major version #define BOOST_VERSION 105800 // BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION # or this way more readable xy@xy:~$ grep BOOST_LIB_VERSION /usr/include/boost/version.hpp // BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION #define BOOST_LIB_VERSION "1_58" 

Afficher la version locale installée:

 xy@xy:~$ grep BOOST_LIB_VERSION /home/xy/boost_install/lib/include/boost/version.hpp // BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION #define BOOST_LIB_VERSION "1_61"