Kselax.ru

Hacker Kselax — the best hacker in the world

Menu
  • Блог
  • Контакты
  • wp plugin генератор
  • Русский
    • Русский
    • English
Menu

Подключение и работа boost в visual studio 2010

Posted on 2 апреля, 201523 марта, 2017 by admin

boostЗдорова ребятки! Сегодня разберем как подключить и настроить библиотеку boost под windows для visual studio 2010. И так для начала скачаем библиотеку с сайта http://www.boost.org/ там выбираем последнюю версию как на скрине ниже и скачиваем.

boost download

Дальше эту библиотеку сохраняем на диск, затем разархивируем в какую нибудь папку, у меня это папка как на скрине ниже

boost lib

Дальше заходим в меню пуск и нам нужно запустить командную строку visual studio 2010 как на скрине ниже

vs2010 command

Запустится командная строка, вводим диск где находится наша папка с файлами буста, у меня это диск E и я ввожу e: и перехожу на диск.

command line

Дальше используем комманду cd и переходим в нужную нам директорию, ну для начала чтобы вывести все файлы я использую команду dir, затем смотрю список папок и ту которая нам нужно и ввожу команду cd lib C++ и так дальше пока не зайдем в папку куда разорхивировался наш boost.

command boost

На скрине мы видим выделенный файл bootstrap.bat который находится в нашей директории, (вывести все файлы мы используем команду dir) и мы запустим этот файл на выполнение командой bootstrap, после чего  у нас в папке появится новый файл который будет называться bjam.exe, мы должны его запустить через командную строку с дополнительными параметрами для построения библиотек:

Для создания релиза:

1
bjam toolset=msvc link=static threading=multi release stage

примерно создается минут 20.

Для создания дебага:

1
bjam toolset=msvc link=static threading=multi debug stage

так же долго создается минут 20.

[tip]

Лучше использовать другой код который компилирует все типы lib, для этого в папке с бустом у вас должно быть достаточно свободного места.

1
bjam --build-type=complete msvc stage --without-python

Строка выше создаст все либы кроме либ для питона.  У меня была проблема я создал по первым двум строкам либы для дебага и для релиза и когда я подключил к вс2010 он выдал ошибку типо нету либы с именет libboost_timer-vc100-mt-gd-1_58.lib. Если вы сделаете все либы строчкой выше скомпилируете буст, то у вас все появится.

И так сейчас я скачал последнюю версию boost 1.59 и там были свои проблемы, например ругался антивирус и пришлось чтобы запустить файл bootstrap.bat выключать антивирус. И создается файл уже не bjam.exe а b2.exe, в общем такие изменения 🙂 Нет все таки создается и bjam.exe он просто пропадает когда мы его запускаем, так что он пропал, нужно было заново делать bootstrap.bat

мне пришлось скомпилировать sgd флагами файл, посмотреть как флаги добавлять можно тут. Я скомпилировал с b2 командой b2 —build-type=complate runtime-link=static и тогда у меня появилась s в названии файла libboost_filesystem-vc100-mt-sgd-1_59.lib

[/tip]

После этого наша библиотека с компилировалась. Дальше осталось ее подключить к нашей visual studio 2010, для этого зайдем в свойства проекта, в обозревателе решений кликнем правок клавишей мышки и выберем свойства

vs2010 propertiesНас интересуют каталоги включения и каталоги библиотек, в каталоги включения прописываем путь к подключаемым файлам, у меня это

cat include

И прописываем путь к подключаемым библиотекам, у меня это

cat lib

Все прописали, дальше создаем файл main.cpp и в него добавляем просто любой код с использованием boost, например отетот

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <boost/thread/thread.hpp>
#include <iostream>
 
void hello()
{
std::cout <<
"Hello world, I'm a thread!"
<< std::endl;
}
 
int main(int argc, char* argv[])
{
boost::thread thrd(&hello);
thrd.join();
return 0;
}

Запускаем и в результате у нас выведется

ress

В общем все у нас работает, и походу либа эта статическая, нету dll-лок. Долго

 

[youtube]https://www.youtube.com/watch?v=p0vAy-ItBUU[/youtube]

 

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Рубрики

  • C++ (293)
  • JavaScript (1)
  • linux (1)
  • MFC (39)
  • node.js (2)
  • React (3)
  • uncategorized (2)
  • vBulletin (5)
  • Visual Studio (9)
  • wordpress (18)
  • Разное (33)

Метки

Ajax bootstrap CentOS CLI expressjs FormData GDlib google Invisible reCAPTCHA JWT media MFC php react-router-dom redux repository wordpress RTTI STL vBulletin vector Visual Studio WINAPI wordpress wp-plugins XMLHttpRequest Двоичное дерево Задачи С++ Игры С++ Исключения С++ О-большое Операторы_С++ Перегрузка операторов С++ Поиск С++ Потоки Проектирование_С++ С++ Типы_С++ Типы С++ Шаблоны С++ библиотеки локализация макросы С++ сортировка С++

Свежие комментарии

  • RA3PKJ к записи visual C++, создание диалоговых окон.
  • JasonReant к записи Создание и использование статических библиотек .lib в visual studio.
  • MyWin2020 к записи Программка для заполнения форума на vBulletin 3.8.7
  • ScottJip к записи Создание и использование статических библиотек .lib в visual studio.
  • ArnoldKig к записи Создание и использование статических библиотек .lib в visual studio.
©2021 Kselax.ru Theme by ThemeGiant