crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Сборка Boost с помощью MinGW32
Litkevich Yuriy
  опции профиля:
сообщение 27.10.2010, 17:36
Сообщение #1


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Как заставить сценарий собирать буст с конкретным компиллером. А то сценарий ошибку выдаёт всё время.
Я нашёл, что в потрахах bat-ника пути забиты отбалды (в стиле рядового быдлокоддера).

Попробовал свои пути записать, ну он и собрал под студию (которой у меня нет) :blink:

Скачал: boost_1_44_0
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 27.10.2010, 19:54
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Я boost вот по этой инструкции собирал (ссылка)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 27.10.2010, 19:59
Сообщение #3


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


ну, конкретно насчёт mingv не уверена, но для icc я его собирала так:
./bootstrap.sh  --with-toolset=intel-linux

export CC=/opt/intel/Compiler/11.1/072/bin/ia32/icc
export CXX=/opt/intel/Compiler/11.1/072/bin/ia32/icpc

./bjam -j2 --layout=versioned --build-type=complete install


тебе тут надо будет поменять CC и CXX, и ещё найти, как указать в параметре --with-toolset твой mingv (это на сайте буста поройся). ну и прочие там параметры у bootstrap можно указать, смотря что конкретно хочешь собрать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 27.10.2010, 20:21
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


я делал так:
bootstrap.bat mingw

сначала печаталась ошибка (в лог-файл), я потом в сам батник bjam'а залез и исправил путь, он был жёстко забит:
C:\MinGW\bin\gcc.exe
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kilkinenator
  опции профиля:
сообщение 27.12.2010, 14:31
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 21
Регистрация: 11.2.2010
Пользователь №: 1464

Спасибо сказали: 3 раз(а)




Репутация:   1  


я, наверное, немного невовремя)
в документации буста (раздел getting started) написано что boost jam собирается так:
Цитата
build [toolset]

также написано что он очень умен и "наибольший шанс на успех" можно достичь не указывая тулсет
Цитата
Running the scripts without arguments will give you the best chance of success

ниже написано как он будет определять тулсет, в частности он решит что нужно компилить под студию если:
Цитата
VCVARSALL.BAT already configured
%VS90COMNTOOLS% is present in environment
Common install location: "%ProgramFiles%\Microsoft Visual Studio 9"
%VS80COMNTOOLS% is present in environment
Common install location: "%ProgramFiles%\Microsoft Visual Studio 8"
CL.EXE in PATH

теперь смотрим что написано в bootstrap.bat
Цитата
call .\build.bat > ..\..\..\bjam.log

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

таблица тулсетов сдесь: http://www.boost.org/doc/tools/jam/jam/building.html


Сообщение отредактировал kilkinenator - 27.12.2010, 15:28
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 10.2.2011, 15:27
Сообщение #6


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Да, кстати, сегодня я вполне успешно собрала буст под MinGW(это под вендой). никаких проблем:
set PATH="c:\MinGW\bin";%PATH%

bjam -j2 --toolset=gcc --build-dir="D:\Temp\BoostBuild" --build-type=complete stage --layout=tagged

обрати внимание, что для венды MinGW - это gcc(см. тулсет MinGW). ну, а остальное - дело вкуса, так сказать (-j2 - количество параллельных процессов (у меня два ядра) - чтобы ускорить процесс сборки).

bjam собирается через booststrap (тупо запуском батника). тут неважно, каким компилятором он сам соберётся.

правда, пришлось без ICU собрать. ICU под MinGW так просто не собирается, но я думаю, что можно придумать патчи или поглядеть порты для неё. я ещё в эту сторону буду копать.

и есть ещё проблема с именами выходных статических библиотек - как-то он криво обзывает статические мультитредовые библиотеки. например, есть библиотека libboost_XXX-mt-sd.a, а libboost_XXX-mt-s.a - нет. тут система именования хитрая, либо банально где-то опечатка в сборочных скриптах. это надо ещё смотреть. но, в общем, я собрала с этим якобы дебажным по названию файлом статику - всё работает.

а дома вчера до кучи собрала буст под линь. и ещё - кросскомпилерный MinGW из-под линя в любую платформу и уже под ним - буст. в общем, всё дико совместимо и вполне работоспособно.

Сообщение отредактировал Iron Bug - 10.2.2011, 15:33
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 12.7.2011, 11:48
Сообщение #7


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


Пытаюсь собрать 1.47.0 и не получается.
c:\panter\boost\boost_1_47_0>bjam --build-dir=build toolset=gcc --build-type=com
plete stage
mingw.jam: No such file or directory
c:/panter/boost/boost_1_47_0/tools/build/v2/build\toolset.jam:38: in toolset.usi
ng
rule mingw.init unknown in module toolset.
c:/panter/boost/boost_1_47_0/tools/build/v2/build\project.jam:888: in using
c:\panter\boost\boost_1_47_0\tools/build/v2\user-config.jam:43: in modules.load
c:/panter/boost/boost_1_47_0/tools/build/v2\build-system.jam:257: in load-config

c:/panter/boost/boost_1_47_0/tools/build/v2\build-system.jam:399: in load-config
uration-files
c:/panter/boost/boost_1_47_0/tools/build/v2\build-system.jam:555: in load
c:\panter\boost\boost_1_47_0\tools\build\v2/kernel\modules.jam:283: in import
c:\panter\boost\boost_1_47_0\tools\build\v2\kernel\bootstrap.jam:142: in boost-b
uild
c:\panter\boost\boost_1_47_0\boost-build.jam:17: in module scope

Гуглится много чего, но ответов нет. У кого получилось?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 12.7.2011, 14:05
Сообщение #8


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


попробуй установить путь до мингва, как-нибудь так:
set PATH="c:\MinGW\bin";%PATH%

у меня ещё msys и утильки для него установлены.

P.S. или у тебя конкретно 47-й не собирается? ща себе качну и попробую собрать.

Сообщение отредактировал Iron Bug - 12.7.2011, 14:07
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 12.7.2011, 14:13
Сообщение #9


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


Конкретно 47. mingw в PATH присутствует.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 12.7.2011, 14:22
Сообщение #10


Профессионал
*****

Группа: Модератор
Сообщений: 1595
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


у меня он собирается. в процессе...
пока всё пучком.
собралось.

P.S. у тебя в командной строке опечатка: не toolset=..., а --toolset=...

Сообщение отредактировал Iron Bug - 12.7.2011, 14:30
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.9.2020, 23:03