Jak wykorzystać Boost w Visual Studio 2010

Jakie jest dobre wyjaśnienie krok po kroku, jak korzystać z biblioteki Boost w pustym projekcie w Visual Studio?

Author: OlimilOops, 2010-04-13

13 answers

Chociaż odpowiedź Nate ' a jest już całkiem dobra, zamierzam rozszerzyć ją bardziej specjalnie dla Visual Studio 2010, zgodnie z życzeniem, i zawierać informacje na temat kompilacji w różnych opcjonalnych komponentach, które wymagają zewnętrznych bibliotek.

Jeśli używasz tylko bibliotek nagłówków, to wszystko, co musisz zrobić, to odłączyć pobieranie boost i skonfigurować zmienne środowiskowe. Poniższa instrukcja ustawia zmienne środowiskowe tylko dla programu Visual Studio, a nie dla system jako całość. Uwaga, musisz to zrobić tylko raz.

  1. Rozpakuj najnowszą wersję boost (1.47.0 w momencie pisania) do wybranego katalogu (np. C:\boost_1_47_0).
  2. Utwórz nowy pusty projekt w Visual Studio.
  3. Otwórz zarządcę nieruchomości i rozwiń jedną z konfiguracji dla wybranej platformy.
  4. Wybierz & kliknij prawym przyciskiem myszy Microsoft.Cpp.<Platform>.user i wybierz Properties, aby otworzyć stronę Właściwości do edycji.
  5. Wybierz VC++ Directories po lewej stronie.
  6. Edytuj Include Directories sekcja zawierająca ścieżkę do plików źródłowych boost.
  7. W razie potrzeby powtórz kroki 3-6 dla różnych platform.

Jeśli chcesz użyć części boost, która wymaga budowania, ale żadna z funkcji, która wymaga zewnętrznych zależności, zbudowanie jej jest dość proste.

  1. Rozpakuj najnowszą wersję boost (1.47.0 w momencie pisania) do wybranego katalogu (np. C:\boost_1_47_0).
  2. Uruchom wiersz poleceń programu Visual Studio na wybraną platformę i przejdź do miejsca, w którym znajduje się boost.
  3. Uruchom: bootstrap.bat aby zbudować b2.exe (wcześniej o nazwie bjam).
  4. Bieg b2:

    • Win32: b2 --toolset=msvc-10.0 --build-type=complete stage ;
    • x64: b2 --toolset=msvc-10.0 --build-type=complete architecture=x86 address-model=64 stage

Idź na spacer / obejrzyj film lub 2/....

  1. przejdź przez kroki 2 - 6 z zestawu instrukcji powyżej, aby ustawić zmienne środowiskowe.
  2. Edytuj sekcję Library Directories, aby uwzględnić ścieżkę do twojego zwiększ wydajność bibliotek. (Domyślną wartością dla powyższego przykładu i instrukcji będzie C:\boost_1_47_0\stage\lib. Zmień nazwę i przenieś najpierw katalog, jeśli chcesz mieć x86 i x64 obok siebie (np. <BOOST_PATH>\lib\x86 & <BOOST_PATH>\lib\x64).
  3. W razie potrzeby powtórz kroki 2-6 dla różnych platform.

Jeśli chcesz mieć opcjonalne komponenty, masz więcej pracy. Są to:

  • Boost.Filtry IOStreams Bzip2
  • Boost.IOStreams Zlib filtry
  • Boost.MPI
  • Boost.Python
  • Boost.Obsługa Regex ICU

Boost.Filtry IOStreams Bzip2:

  1. Odblokuj najnowszą wersję biblioteki bzip2 (1.0.6 jako zapis) pliki źródłowe do wybranego katalogu (np. C:\bzip2-1.0.6).
  2. Aby zbudować boost, wykonaj drugi zestaw instrukcji powyżej, ale Dodaj opcję {[14] } podczas uruchamiania b2 w kroku 5.

Boost.Filtry IOStreams Zlib

  1. Unarchive the najnowsza wersja biblioteki zlib (1.2.5 od zapisu) pliki źródłowe do wybranego katalogu (np. C:\zlib-1.2.5).
  2. Aby zbudować boost, wykonaj drugi zestaw instrukcji powyżej, ale Dodaj opcję -sZLIB_SOURCE="C:\zlib-1.2.5" podczas uruchamiania b2 w kroku 5.

Boost.MPI

  1. zainstaluj dystrybucję MPI, taką jak Microsoft Compute Cluster Pack.
  2. wykonaj kroki 1-3 z drugiego zestawu instrukcji powyżej, aby zbudować boost.
  3. Edycja pliku project-config.jam w katalogu <BOOST_PATH> to wynik uruchomienia bootstrap. Dodaj w linii using mpi ; (zwróć uwagę na spację przed';').
  4. wykonaj resztę kroków z drugiego zestawu instrukcji powyżej, aby zbudować boost. Jeśli automatyczne wykrywanie instalacji MPI nie powiedzie się, musisz poszukać i zmodyfikować odpowiedni plik kompilacji, aby znaleźć MPI we właściwym miejscu.

Boost.Python

  1. zainstaluj dystrybucję Pythona, taką jak ActiveState ' s ActivePython. Upewnij się, że Pyton instalacja jest na twojej ścieżce.
  2. Do pełnego zbudowania 32-bitowej wersji biblioteki wymagana jest 32-bitowa wersja Pythona, podobnie jak dla wersji 64-bitowej. Jeśli z tego powodu zainstalowano wiele wersji, musisz powiedzieć b2, gdzie znaleźć konkretną wersję i kiedy użyć której. Jednym ze sposobów na to jest edycja pliku project-config.jam w katalogu <BOOST_PATH>, który powstał w wyniku uruchomienia bootstrap. Dodaj następujące dwie linie dostosowujące się odpowiednio do Twojego Pythona ścieżki i wersje instalacji (zwróć uwagę na spację przed ';').

    using python : 2.6 : C:\\Python\\Python26\\python ;

    using python : 2.6 : C:\\Python\\Python26-x64\\python : : : <address-model>64 ;

    Zauważ, że taka Jawna Specyfikacja Pythona obecnie powoduje niepowodzenie kompilacji MPI. Więc musisz zrobić oddzielny budynek ze specyfikacją i bez niej, aby zbudować wszystko, jeśli budujesz również MPI.

  3. Postępuj zgodnie z drugim zestawem instrukcji powyżej, aby zbudować boost.

Boost.Obsługa Regex ICU

  1. Unarchive the najnowsza wersja biblioteki ICU4C (4.8 od zapisu) plik źródłowy do wybranego katalogu (np. C:\icu4c-4_8).
  2. Otwórz rozwiązanie Visual Studio w <ICU_PATH>\source\allinone.
  3. Build All for both debug & release configuration for the platform of your choice. Może wystąpić problem z tworzeniem ostatnich wydań ICU4C z Visual Studio 2010, gdy wyjście zarówno dla debug, jak i release build znajdują się w tym samym katalogu (co jest domyślnym zachowaniem). Możliwe obejście polega na wykonaniu Build All (z debug build powiedzieć), a następnie zrobić Rebuild all W 2nd konfiguracji (np. release build).
  4. jeśli budujesz dla x64, musisz uruchomić system operacyjny x64, ponieważ istnieją kroki budowania po uruchomieniu niektórych 64-bitowych aplikacji, które buduje.
  5. Opcjonalnie Usuń katalog źródłowy, gdy skończysz.
  6. Po uruchomieniu b2 w kroku 5 postępuj zgodnie z drugim zestawem instrukcji powyżej, aby zbudować boost, ale Dodaj w opcji -sICU_PATH="C:\icu4c-4_8".
 497
Author: KTC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 10:31:14

Podczas gdy instrukcje na stronie Boost są pomocne, oto skrócona wersja, która również buduje biblioteki x64.

  • musisz to zrobić tylko wtedy, gdy korzystasz z jednej z bibliotek wymienionych w sekcja 3 strony z instrukcjami. (Np. aby użyć Boost.System plików wymaga kompilacji.) Jeśli nie używasz żadnego z nich, po prostu rozpakuj i idź.

Tworzenie bibliotek 32-bitowych

To instaluje pliki nagłówkowe Boost pod C:\Boost\include\boost-(version), oraz bibliotek 32-bitowych Pod C:\Boost\lib\i386. Zauważ, że domyślną lokalizacją bibliotek jest C:\Boost\lib, ale będziesz chciał umieścić je w katalogu i386, jeśli planujesz budować dla wielu architektur.

  1. Rozpakuj Boost do nowego katalogu.
  2. Uruchom 32-bitowy wiersz polecenia MSVC i przejdź do katalogu, w którym Boost został rozpakowany.
  3. Run: bootstrap
  4. Run: b2 toolset=msvc-12.0 --build-type=complete --libdir=C:\Boost\lib\i386 install

    • do Visual Studio 2012 użyj toolset=msvc-11.0
    • Do Visual Studio 2010, użycie toolset=msvc-10.0
    • W Visual Studio 2017 użyj toolset=msvc-14.1
  5. Dodaj C:\Boost\include\boost-(version) do ścieżki dołączania.

  6. dodaj C:\Boost\lib\i386 do ścieżki libs.

Tworzenie bibliotek 64-bitowych

To instaluje pliki nagłówkowe Boost w C:\Boost\include\boost-(version), a biblioteki 64-bitowe w C:\Boost\lib\x64. Zauważ, że domyślną lokalizacją bibliotek jest C:\Boost\lib, ale będziesz chciał umieścić je w katalogu x64, jeśli planujesz budować dla wielu architektury.

  1. Rozpakuj Boost do nowego katalogu.
  2. Uruchom 64-bitowy wiersz polecenia MSVC i przejdź do katalogu, w którym Boost został rozpakowany.
  3. Run: bootstrap
  4. Run: b2 toolset=msvc-12.0 --build-type=complete --libdir=C:\Boost\lib\x64 architecture=x86 address-model=64 install
    • do Visual Studio 2012 użyj toolset=msvc-11.0
    • do Visual Studio 2010 użyj toolset=msvc-10.0
  5. Dodaj C:\Boost\include\boost-(version) do ścieżki dołączania.
  6. Dodaj C:\Boost\lib\x64 do ścieżki libs.
 148
Author: Nate,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-08 15:46:34

Możesz również spróbować-j % NUMBER_OF_PROCESSORS% jako argumentu, który użyje wszystkich Twoich rdzeni. Sprawia, że wszystko jest super szybkie na moim quad core.

 18
Author: Aaron Stainback,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-08-18 19:07:16

Mogę polecić następującą sztuczkę: Utwórz specjalny plik boost.props

  1. otwórz zarządcę nieruchomości
  2. Kliknij prawym przyciskiem myszy węzeł projektu i wybierz "Dodaj nowy arkusz właściwości projektu".
  3. Wybierz lokalizację i nazwę arkusza nieruchomości (np. c:\mystuff\boost.rekwizyty)
  4. zmodyfikuj dodatkowe foldery Include i Lib do ścieżki wyszukiwania.

Ta procedura ma wartość, którą boost jest zawarty tylko w projektach, w których chcesz go wyraźnie włączyć. Jeśli masz nowy projekt, który używa boost, zrób:

  1. otwórz zarządcę nieruchomości.
  2. Kliknij prawym przyciskiem myszy węzeł projektu i wybierz "Dodaj istniejący arkusz właściwości".
  3. wybierz arkusz właściwości boost.

EDIT (po edit od @ jim-fred):

Wynikowy plik boost.props wygląda mniej więcej tak...

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ImportGroup Label="PropertySheets" />
  <PropertyGroup Label="UserMacros">
    <BOOST_DIR>D:\boost_1_53_0\</BOOST_DIR>
  </PropertyGroup>
  <PropertyGroup>
    <IncludePath>$(BOOST_DIR);$(IncludePath)</IncludePath>
    <LibraryPath>$(BOOST_DIR)stage\lib\;$(LibraryPath)</LibraryPath>
  </PropertyGroup>
</Project>

Zawiera makro użytkownika do lokalizacji katalogu boost (w tym przypadku, D:\boost_1_53_0) oraz dwa inne parametry: IncludePath i Biblioteka. Oświadczenie #include <boost/thread.hpp> znajdzie wątek.hpp w odpowiednim katalogu (w tym przypadku, D:\boost_1_53_0\boost\thread.hpp). Katalog 'stage \ lib\' może ulec zmianie w zależności od katalogu zainstalowanego.

Ten boost.plik props może znajdować się w katalogu D:\boost_1_53_0\.

 13
Author: Uri,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-02 07:52:14

Jakie części Boost potrzebujesz? Wiele rzeczy jest częścią TR1, która jest dostarczana z Visual Studio, więc można po prostu powiedzieć, na przykład:]}

#include <tr1/memory>

using std::tr1::shared_ptr;

Według Jamesa, powinno to również działać (w C++0x):

#include <memory>

using std::shared_ptr;
 13
Author: fredoverflow,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-13 17:52:03

Jeszcze mała uwaga: Jeśli chcesz skrócić czas kompilacji, możesz dodać flagę

-j2

Uruchamianie dwóch równoległych kompilacji w tym samym czasie. Może to zredukować do oglądania jednego filmu;)

 5
Author: GaMer13,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-05-16 11:33:02

Ten wątek jest już jakiś czas i pomyślałem, że dodam coś o tym, jak zbudować Boost tak szybko, jak to możliwe na konkretnym sprzęcie.

Jeśli masz 4 lub 6-rdzeniowy użyj odpowiednio-j5 lub-j7. Z pewnością nie Standardowa Budowa ani-j2, chyba że rzeczywiście masz dwurdzeniowy.

[[4]] uruchamiam Sandy Bridge Extreme z taktowanym zapasem 3930K (6-rdzeniowy) na mojej głównej stacji, ale mam 2600K (4-rdzeniowy) na starszej skrzynce zapasowej, a trend jest taki, że najlepsze czasy kompilacji Boost z N + 1 budowanie procesów, gdzie N to liczba fizycznych rdzeni. N + 2 osiąga punkt malejących zwrotów i czasy idą w górę.

Uwagi: Hyperthreading jest włączony, 32GB RAM DDR3, Samsung 840 EVO SSD.

-j7 na 6-rdzeniowym (2 minuty i 51 sekund) (Win7 Ultimate x64) (Visual Studio 2013)

PS C:\Boost\boost_1_56_0> measure-command { .\b2 -j7 --build-type=complete msvc stage }

Days              : 0
Hours             : 0
Minutes           : 2
Seconds           : 51
Milliseconds      : 128
Ticks             : 1711281830
TotalDays         : 0.0019806502662037
TotalHours        : 0.0475356063888889
TotalMinutes      : 2.85213638333333
TotalSeconds      : 171.128183
TotalMilliseconds : 171128.183

-j6 na 6-rdzeniowym (3 minuty i 2 sekundy) (Win7 Ultimate x64) (Visual Studio 2013)

PS C:\Boost\boost_1_56_0> measure-command { .\b2 -j6 --build-type=complete msvc stage }

Days              : 0
Hours             : 0
Minutes           : 3
Seconds           : 2
Milliseconds      : 809
Ticks             : 1828093904
TotalDays         : 0.00211584942592593
TotalHours        : 0.0507803862222222
TotalMinutes      : 3.04682317333333
TotalSeconds      : 182.8093904
TotalMilliseconds : 182809.3904

-j8 na 6-rdzeniowym (3 minuty i 17 sekund) (Win7 Ultimate x64) (Visual Studio 2013)

PS C:\Boost\boost_1_56_0> measure-command { .\b2 -j8 --build-type=complete msvc stage }

Days              : 0
Hours             : 0
Minutes           : 3
Seconds           : 17
Milliseconds      : 652
Ticks             : 1976523915
TotalDays         : 0.00228764342013889
TotalHours        : 0.0549034420833333
TotalMinutes      : 3.294206525
TotalSeconds      : 197.6523915
TotalMilliseconds : 197652.3915

- j7 build on 6-core

Config

Building the Boost C++ Libraries.


Performing configuration checks

    - 32-bit                   : yes (cached)
    - arm                      : no  (cached)
    - mips1                    : no  (cached)
    - power                    : no  (cached)
    - sparc                    : no  (cached)
    - x86                      : yes (cached)
    - has_icu builds           : no  (cached)
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
    - zlib                     : no  (cached)
    - iconv (libc)             : no  (cached)
    - iconv (separate)         : no  (cached)
    - icu                      : no  (cached)
    - icu (lib64)              : no  (cached)
    - message-compiler         : yes (cached)
    - compiler-supports-ssse3  : yes (cached)
    - compiler-supports-avx2   : yes (cached)
    - gcc visibility           : no  (cached)
    - long double support      : yes (cached)
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
    - zlib                     : no  (cached)

Zauważam, że 64-bitowa budowa trwa nieco dłużej, muszę zrobić to samo porównanie i zaktualizować.

 5
Author: codenheim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-06 08:09:46

Oto jak udało mi się użyć Boosta:

  1. Pobierz i rozpakuj wersję zip bibliotek Boost.
  2. Uruchom bootstrap.plik bat, a następnie uruchom bjam.exe. Poczekaj około 30 minut.
  3. Utwórz nowy projekt w Visual Studio.
  4. Przejdź do project-->properties-->Linker-->General-->dodatkowe katalogi bibliotek i dodaj do niego katalog boost/stage/lib.
  5. Przejdź do projekt-- > właściwości-- > C / C++-- > ogólne-- > dodatkowe Dołącz do niego katalogi i dodaj do niego katalog boost.

Będziesz mógł zbudować swój projekt bez żadnych błędów !

 4
Author: bhavesh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-05-20 11:08:50

Pobierz boost z: http://www.boost.org/users/download / np. przez svn

  • Windows - > żółw (najprostszy sposób)

Po tym : cmd - > przejdź do katalogu boost ("D:\boostTrunk" - gdzie kasujesz lub pobierasz i rozpakowujesz pakiet): dowództwo : bootstrap

Stworzyliśmy bjam.exe in ("D:\boostTrunk") Potem : dowództwo : bjam toolset = msvc-10.0 variant=debug,release threading = multi link=static (Zajmie to trochę czasu ~20min.)

Po tym: Otwórz Visual studio 2010 -> Utwórz pusty projekt -> przejdź do właściwości projektu - > ustaw:

Nieruchomości projektu VS 2010

Wklej ten kod i sprawdź czy działa?

#include <iostream>
#include <boost/shared_ptr.hpp>
#include <boost/regex.hpp>

using namespace std;

struct Hello 
{
    Hello(){ 
        cout << "Hello constructor" << endl;
    }

    ~Hello(){
        cout << "Hello destructor" << endl;
        cin.get();
    }
};


int main(int argc, char**argv)
{
    //Boost regex, compiled library
    boost::regex regex("^(Hello|Bye) Boost$");
    boost::cmatch helloMatches;
    boost::regex_search("Hello Boost", helloMatches, regex);
    cout << "The word between () is: " << helloMatches[1] << endl;

    //Boost shared pointer, header only library
    boost::shared_ptr<Hello> sharedHello(new Hello);

    return 0;
}

Zasoby : https://www.youtube.com/watch?v=5AmwIwedTCM

 4
Author: andrew,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-21 22:50:33

Instalatory Windows znajdujące się tutaj działały dla mnie idealnie. Wykonałem następujące kroki:

  1. postępuj zgodnie z kreatorem instalacji, aż do zakończenia.
  2. Uruchom visual studio.
  3. Utwórz nowy projekt C++
  4. Otwórz właściwości projektu (można je znaleźć klikając prawym przyciskiem myszy nazwę projektu w Eksploratorze rozwiązań)
  5. Pod "C / C++ > ogólne > dodatkowe katalogi Include" Dodaj ścieżkę, do której boost katalogu głównego. Domyślną dla mojej wersji było C:\local\boost_1_63_0. Liczba po "boost" jest wersją boost.
  6. we właściwościach projektu, pod "Linker > dodatkowe katalogi biblioteczne" Dodaj katalog plików bibliotecznych. Domyślną dla mojej wersji było C:\local\boost_1_63_0\lib64-msvc-14.0. Liczba po " lib "jest związana z celem kompilacji (32 bit lub 64 bit w Visual Studio), a liczba PO "msvc" jest związana z wersją Visual Studio (14.0 jest związana z Visual Studio 2015, ale używam jej z Visual Studio 2017 Studio).

Powodzenia!

 3
Author: Zoob,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-28 01:32:33

Mały dodatek do bardzo pouczającej głównej odpowiedzi KTC:

Jeśli używasz wolnego Visual Studio C++ 2010 Express i udało Ci się go skompilować 64-bitowe binaria, a teraz chcesz go użyć do korzystania z 64-bitowej wersji bibliotek Boost, możesz skończyć z 32-bitowymi bibliotekami (przebieg może się różnić oczywiście, ale na moim komputerze jest to smutny przypadek).

Mogę to naprawić, używając następujących kroków: inbetween kroki opisane powyżej jako

  1. Uruchom 32-bitowy Wiersz polecenia MSVC i przejdź do katalogu, w którym Boost został rozpakowany.
  2. Run: bootstrap

Wstawiłem wywołanie 'setenv' aby ustawić środowisko. W przypadku kompilacji wersji powyższe kroki stają się:

  1. Uruchom 32-bitowy wiersz polecenia MSVC i przejdź do katalogu, w którym Boost został rozpakowany.
  2. Run: "C:\Program Files \ Microsoft SDKs \ Windows \ v7. 1 \ Bin \ setenv.cmd " / Release / x64
  3. Run: bootstrap

I found this info proszę.: http://boost.2283326.n4.nabble.com/64-bit-with-VS-Express-again-td3044258.html

 2
Author: ecotax,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-31 13:27:41

Minimalistyczny przykład na rozpoczęcie pracy w Visual Studio:]}

1.Pobierz i rozpakuj Boost stąd.

2.Tworzenie pustego projektu Visual Studio, używając przykładowej biblioteki boost, która nie wymaga oddzielnej kompilacji:

#include <iostream>
#include <boost/format.hpp>

using namespace std;  
using namespace boost;  

int main()  
{  
    unsigned int arr[5] = { 0x05, 0x04, 0xAA, 0x0F, 0x0D };  

    cout << format("%02X-%02X-%02X-%02X-%02X")  
            % arr[0]  
            % arr[1]  
            % arr[2]  
            % arr[3]  
            % arr[4]  
         << endl;  
}  

3.In właściwości projektu Visual Studio ustawiają dodatkowe katalogi Include:

Właściwości Projektu

Dla bardzo prostego przykładu:

Jak zainstalować biblioteki Boost w Visual Studio

Jeśli nie chcę używać całej biblioteki boost, tylko podzbiór:

Używanie podzbioru bibliotek boost w systemie Windows

Jeśli chcesz teraz o bibliotekach, które wymagają kompilacji:

Jak używać skompilowanych bibliotek Boost w systemie Windows

 1
Author: AndyUK,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-12 18:59:03

Ponadto, jest coś, co uważam za bardzo przydatne. Użyj zmiennych środowiskowych dla ścieżek doładowania. (Jak ustawić zmienne środowiskowe w windows, link na dole dla 7,8,10) zmienna BOOST_ROOT wydaje się być już powszechnym miejscem i jest ustawiona na ścieżkę główną, gdzie rozpakowujesz boost.

Następnie w Properties, C++, ogólne, dodatkowe katalogi Include użyj $(BOOST_ROOT). Następnie jeśli / po przeniesieniu do nowszej wersji biblioteki boost możesz zaktualizować zmienną środowiskową do point do tej nowszej wersji. Jako więcej swoich projektów, użyj boost nie będziesz musiał aktualizować "dodatkowych katalogów dołącz" dla wszystkich z nich.

Można również utworzyć zmienną BOOST_LIB i wskazać miejsce, w którym libs są wystawiane. Podobnie jak w przypadku linkera - > dodatkowych katalogów bibliotecznych, nie będziesz musiał aktualizować projektów. Mam kilka starych rzeczy zbudowanych z vs10 i nowych rzeczy z vs14, więc zbudowałem oba smaki lib boost do tego samego folderu. Więc jeśli przeniosę projekt z vs10 do vs14 I nie musisz zmieniać ścieżek doładowania.

Uwaga: Jeśli zmienisz zmienną środowiskową, nie będzie ona nagle działać w otwartym projekcie VS. VS ładuje zmienne podczas uruchamiania. Więc będziesz musiał zamknąć VS i ponownie go otworzyć.

 0
Author: lakeweb,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-15 17:49:13