시스템에서 Boost C ++ 라이브러리의 버전을 확인하는 빠른 방법이 있습니까?
답변
정보 용 매크로 향상 . 당신이 필요합니다 :BOOST_VERSION
답변
부스트 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;
출력 : Boost 1.51.0 사용
부스트 버전 1.51.0에서 1.65.0으로 테스트
답변
자신의 정보 만 알고 싶다면 /usr/include/boost/version.hpp(Ubuntu 13.10)를보고 정보를 직접 읽으십시오.
답변
#include <boost/version.hpp>
#include <iostream>
#include <iomanip>
int main()
{
std::cout << "Boost version: "
<< BOOST_VERSION / 100000
<< "."
<< BOOST_VERSION / 100 % 1000
<< "."
<< BOOST_VERSION % 100
<< std::endl;
return 0;
}
업데이트 : 답변이 수정되었습니다.
답변
boost를 설치 한 방법과 실행중인 OS에 따라 다음을 시도 할 수도 있습니다.
dpkg -s libboost-dev | grep 'Version'
답변
Homebrew를 사용하여 OS X에 설치된 Boost version.hpp
는/usr/local/Cellar/boost/<version>/include/boost/version.hpp
(버전은 이미 경로에 언급되어 있음).
유닉스 계열 시스템에서 버전을 결정하는 가장 빠른 방법은 다음에서 검색하는 것 boost
입니다 /usr
.
find /usr -name "boost"
답변
나에 관해서는, 먼저 (버전 변수가 어디에 있는지 알면 version.hpp 버전 변수를 찾을 수 있습니다 (우분투에서는 일반적 /usr/include/boost/version.hpp
으로 기본 설치에 있음)) :
locate `boost/version.hpp`
두 번째 버전은 다음과 같습니다.
grep BOOST_LIB_VERSION /usr/include/boost/version.hpp
또는
grep BOOST_VERSION /usr/include/boost/version.hpp.
내 시스템에 두 가지 버전 향상이 설치되어 있습니다. 아래와 같이 출력 :
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"
설치된 로컬 버전 표시 :
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"