Форум программистов, компьютерный форум, киберфорум
Boost C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/35: Рейтинг темы: голосов - 35, средняя оценка - 4.66
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
1

как собрать boost_1_53_0

28.06.2013, 13:40. Показов 6767. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
я так и не врубился как собрать boost_1_53_0.. вот скачал этот zip файл -> раcпоковал -> щёлкнул по bootstrap.bat что мелькнуло погасло -> появился файл log -> здесь пишут, что собираться должно целый час и файл должен образоваться 6 гигов... как это всё сделать? что писать в командной строке?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.06.2013, 13:40
Ответы с готовыми решениями:

Как собрать установочный файл?
Я написал программу, но хочу сделать так, чтобы она устанавливалась. Как это сделать?

Как собрать файлы в директории?
Привет всем! Пользователем в программе задаётся директория (начальная папка). Требуется собрать...

Как собрать libssh под Windows 7?
Здравствуйте. Может кто-то собирал libssh под Win7, как это сделать? В гугл не посылать, уже был,...

Как собрать boost через mingw64?
Скачал boost версии 1.66.0 и не понимаю как его собрать через mingw64 на windows 7. Вот сама...

14
1458 / 795 / 257
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
28.06.2013, 14:14 2
Создаешь bat файл с примерно вот таким содержимым (это для MinGW 64bit):
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
@echo off
 
set MINGWDIR=C:\mingw64
 
rem check if mingw path correct
if not exist %MINGWDIR%/bin/mingw32-make.exe (
   echo bad mingw directory!
   exit /b 1
) else (
   echo mingw directory ok.
)
 
bjam ^
   -j2 ^
    toolset=gcc ^
    variant=release ^
    threading=multi ^
    link=static ^
    runtime-link=static ^
    --without-math ^
    --without-graph ^
    --without-graph_parallel ^
    --without-python ^
    --layout=system ^
   --libdir=%MINGWDIR%/boost/lib ^
   --includedir=%MINGWDIR%/x86_64-w64-mingw32\include ^
   install
 
pause
Кладеш его в папку с бустом, открываеш командную стоку, переходиш в эту папку и запускаеш свой bat файл. Либы будут собраны в папке где mingw - папка boost/lib, а инклуды в x86_64-w64-mingw32\include.

Добавлено через 2 минуты
А для студии я так делал:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
@echo off
 
bjam ^
   -j2 ^
   toolset=msvc-11.0 ^
   --build-type=complete ^
   architecture=x86 ^
   address-model=64 ^
   --libdir=C:/boost/lib ^
   --includedir=C:/boost/include ^
   install
 
pause
2
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
28.06.2013, 17:13  [ТС] 3
что то недопонял, пишу в ком. строке
Bash
1
C:\boost_1_53_0\boost_1_53_0>bootstrap1.bat
пишет что
Bash
1
bad mingw directory!
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
сам bootstrap1.bat я такой сделал
@echo off
set MINGWDIR=C:\Program Files\CodeBlocks\MinGW
 rem check if mingw path correct
if not exist %MINGWDIR%/bin/mingw32-make.exe (
   echo bad mingw directory!
   exit /b 1
) else (
   echo mingw directory ok.
)
bjam ^
   -j2 ^
    toolset=msvc ^
    variant=release ^
    threading=multi ^
    link=static ^
    runtime-link=static ^
    --without-python ^
    --layout=system ^
   --libdir=%MINGWDIR%/lib ^
   --includedir=%MINGWDIR%/mingw32\include ^
   install
 
pause
кстати по поводу --libdir и --includedir я их указал в C:\Program Files\CodeBlocks\MinGW они уже есть такие папки, они по идее к существующим добавятся, или нужно отдельные для boost создавать

Добавлено через 11 минут
я что т запутался - установил toolset=msvc , щяс поменял на toolset=gcc раз у меня MinGW , но ошибка осталась

Добавлено через 1 час 19 минут
https://www.cyberforum.ru/blog... g1060.html
вот конечно написано, но на шаге 3: Запустить файл:
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine\build.bat
в результате в папке C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine\bin.ntx86 будет собран bjam.exe
он у меня не собирается!

Добавлено через 14 минут
вот кстати что пишется
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine>build
###
### Using 'msvc' toolset.
###
 
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine>if exist bootstrap rd /S /Q b
ootstrap
 
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine>md bootstrap
 
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine>cl /nologo /GZ /Zi /MLd /Fobo
otstrap/ /Fdbootstrap/ -DNT -DYYDEBUG kernel32.lib advapi32.lib user32.lib /Febo
otstrap\jam0  command.c compile.c constants.c debug.c execnt.c filent.c function
.c glob.c hash.c hdrmacro.c headers.c jam.c jambase.c jamgram.c lists.c make.c m
ake1.c object.c option.c output.c parse.c pathunix.c regexp.c rules.c scan.c sea
rch.c subst.c timestamp.c variable.c modules.c strings.c filesys.c builtins.c md
5.c pwd.c class.c w32_getreg.c native.c modules/set.c modules/path.c modules/reg
ex.c modules/property-set.c modules/sequence.c modules/order.c
"cl" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine>
1
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
28.06.2013, 21:20 4
@soican,
###
### Using 'msvc' toolset.
###
Ведь написано же, что строится используя MSVC. Причем тут mingw?
0
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
28.06.2013, 23:19  [ТС] 5
Цитата Сообщение от ForEveR Посмотреть сообщение
Ведь написано же, что строится используя MSVC. Причем тут mingw?
ну так ссылка https://www.cyberforum.ru/blog... g1060.html это "Сборка boost 1.52.0 под MinGW"
ну так по инструкции начинаю делать, и мне это вылетает
Цитата Сообщение от soican Посмотреть сообщение
Using 'msvc' toolset.
0
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
29.06.2013, 20:48 6
@soican, открой файл
.../boost_1_53_0/boost_1_53_0/more/getting_started/windows.html
и начни с пункта 5.3.1

Добавлено через 2 часа 48 минут
а тулсет можно указать так
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine>build gcc
0
6 / 6 / 0
Регистрация: 23.02.2012
Сообщений: 169
29.06.2013, 23:24 7
Вот я уже собирал:
Boost.ASIO + Code::Blocks
0
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
01.07.2013, 03:07  [ТС] 8
Цитата Сообщение от igorrr37 Посмотреть сообщение
открой файл
.../boost_1_53_0/boost_1_53_0/more/getting_started/windows.html
и начни с пункта 5.3.1
открыл и начал:
Bash
1
2
5.3. If you're using an earlier version of Visual C++, or a compiler from another vendor,
 you'll need to use Boost.Build to create your own binaries.
скачиваю boost_1_53_0,boost-build-2.0-m12, компилятор в папке С:\Program Files\CodeBlocks\MinGW\bin
Bash
1
2
3
4
5
6
5.3.1   Install Boost.Build
Boost.Build is a text-based system for developing, testing, and installing software. First, you'll need to build and install it. To do this:
Go to the directory tools\build\v2\.
Run bootstrap.bat
Run b2 install --prefix=PREFIX where PREFIX is the directory where you want Boost.Build to be installed
Add PREFIX\bin to your PATH environment variable.
папки tools\build\v2\ нет в boost-build-2.0-m12(я так понимаю зря качал boost-build-2.0-m12) она есть в boost_1_53_0/boost_1_53_0(аж два раза, чтоб для прапорщиков). запускаю оттуда bootstrap.bat - никаких файлов это мне не принесло. разбираюсь, а что в этом bootstrap.bat написано...да ничего особенного, кроме того,что запускается build.bat из папки engine. а в нем больше интересного...вот что интересно:
Bash
1
2
3
4
if EXIST "C:\MinGW\bin\gcc.exe" (
    set "BOOST_JAM_TOOLSET=mingw"
    set "BOOST_JAM_TOOLSET_ROOT=C:\MinGW\"
    goto :eof)
gcc.exe существует,только в папке С:\Program Files\CodeBlocks\MinGW\bin и ещё, а что это за set "BOOST_JAM_TOOLSET=mingw" ведь в таблице 5.3.2 Identify Your Toolset есть такая строчка:
Bash
1
gcc-The Gnu Project-Includes support for Cygwin and MinGW compilers.
странно всё это...никакого файла b2 у меня не появилось, запускать нечего. странно то, что я нашёл десять разных вариантов установки boost...вроде умею читать я инструкции, вроде думал не тупой...но boost меня порядком озадачил...черт с ним, он есть в c++builder XE как оказалось...но дело в другом я хочу его установить уже просто для интереса(ну и для удобства)...ну всё вроде как на ладоне, всё ясно...я не знаю как нужно с ним колдовать...ребят колитесь)
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
01.07.2013, 08:51 9
soican, Открываем BOOST_DIR/tools/build/v2/user-config.jam. Пишем
using gcc : версия gcc : путь к бинарнику (С:\Program Files\CodeBlocks\MinGW\bin\g++) ;
Запускаем сборку, в зависимости от желаемых параметров.
0
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
01.07.2013, 12:28 10
Цитата Сообщение от soican Посмотреть сообщение
вот конечно написано, но на шаге 3: Запустить файл:
C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine\build.bat
в результате в папке C:\boost_1_52_0\boost_1_52_0\tools\build\v2\engine\bin.ntx86 будет собран bjam.exe
он у меня не собирается!
шаг 3 исправлен
0
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
06.07.2013, 20:49  [ТС] 11
Цитата Сообщение от igorrr37 Посмотреть сообщение
шаг 3 исправлен
igorrr37, скажите пожалуйста, а где в вашем указании по сборке boost имеется пункт, в котором мы как-то определяем, где находится наш компилятор (мало ли где он может быть установлен) или сборщик сам как то догадается, или там есть что-то по умолчанию, что не у всех будет по-умолчанию?
0
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
07.07.2013, 06:09 12
путь к папке bin компилятора должен быть прописан в переменной PATH
0
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
07.07.2013, 19:37  [ТС] 13
igorrr37, допиши этот момент в https://www.cyberforum.ru/blog... g1060.html
просто у меня допустим такой переменной не было

Добавлено через 2 часа 4 минуты
igorrr37, давай доведем твоё руководство до совершенства, указав, что если bjam.exe копировать в /Windows/System32 то должна быть системная переменная с таким значением(у меня её не было и соответственно запуск build.bat выдал ошибку, тогда я скопировал bjam.exe в папку bin моего компилятора, и тогда уже запуск build.bat собрал мне boost)

Добавлено через 2 часа 48 минут
Цитата Сообщение от soican Посмотреть сообщение
запуск build.bat собрал мне boost
что то я поспешил это сказать,
папка include всего 111МБ, либ - 34. что то далеко до каких-то гигобайтов. Так вот в code::blocks открыл compiler settings и в пункте search directories вписал в compiler и linker пути к бусту. И вот решил проверить работоспособность:
C++
1
2
3
4
5
6
7
8
#include <boost/thread.hpp>
#include <iostream>
void hello()
{ std::cout<<"Hello Concurrent World\n"; }
int main()
{boost::thread t(hello);
t.join();
}
и получаю error_code.hpp:
C++
1
2
3
4
5
6
7
8
# ifndef BOOST_SYSTEM_NO_DEPRECATED
    inline const error_category &  get_system_category() { return system_category(); }
    inline const error_category &  get_generic_category() { return generic_category(); }
    inline const error_category &  get_posix_category() { return generic_category(); }
    static const error_category &  posix_category = generic_category();//здесь метка ошибки
    static const error_category &  errno_ecat     = generic_category();
    static const error_category &  native_ecat    = system_category();
# endif
C:\Boost_1_54\include\boost\system\error_code.hpp|222|undefined reference to `boost::system::generic_category()'|
0
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
07.07.2013, 22:12 14
для boost/thread надо прилинковать к проекту
libboost_thread.a
libboost_system.a
http://stackoverflow.com/quest... c-category

Добавлено через 4 минуты
Цитата Сообщение от soican Посмотреть сообщение
что то далеко до каких-то гигобайтов
откуда инфа про гигабайты? У меня include - 84 мБ, lib - 24 мБ
1
49 / 23 / 3
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
07.07.2013, 22:43  [ТС] 15
Цитата Сообщение от igorrr37 Посмотреть сообщение
откуда инфа про гигабайты?
да просто пишут все, нужно чтоб минимум 6 гигов на диске. Вот и создаётся впечатление, что boost примерно столько весить
0
07.07.2013, 22:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.07.2013, 22:43
Помогаю со студенческими работами здесь

Хочу собрать собрать хороший ПК, для игр. Посоветуйте детали.
Хочу собрать собрать хороший ПК, для игр. Посоветуйте детали.

Как собрать (скомпоновать) asp.net mvc чтобы запуск осуществлялся вне студии (как готовое приложение)?
Как собрать (скомпоновать) проект asp.net mvc чтобы запуск осуществлялся вне студии (как готовое...

Как собрать Nano-X?
Как собрать Nano-X под ARM-архитектуру используя кросс-компиляцию?

Как собрать и не ошибиться
подскажите как собрать комп , т.е последовательность сборки-что сначала ставить что в последнию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru