Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите скомпилиорвать boost под vc71 
:(
    Опции темы
Arkadiy
  Дата 12.8.2006, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 21.9.2005

Репутация: нет
Всего: нет



Компилятор: vc 7.1
Boost Version 1.32.0

Не могу скомпилировать Boost.jam. smile
В документации к бусту Getting started\Install Boost.Jam\Building Boost.Jam написано:
Цитата

Running the scripts without arguments will give you the best chance of success. On Windows platforms from a command console do:
Код

cd <jam source location>
.\build.bat



если делаю, как написано, получаю единственную строку: 
Цитата

\Microsoft was unexpected at this time.


если запускаю с параметром
build.bat vc7
получаю тоже всего одну строчку:
Цитата

\Common was unexpected at this time.


переменные окружения установлены вот так:
System Variables:

Цитата

VS71COMNTOOLS = C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools\



Цитата

VC71_ROOT = C:\Program Files(x86)\Microsoft Visual Studio .NET 2003\Vc7


Цитата

VCINSTALLDIR = C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\


в build.bat есть явное указание пути C:\Program files\, пробовал менять его на на C:\Program Files (x86)\ ничего не изменилось

PM MAIL   Вверх
Daevaorn
Дата 12.8.2006, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 51
Всего: 70



Arkadiy
Лучше найди в интернете уже готовый бинарник bjam.exe. Я сам так делал, потому что у меня собранный лично вылетал с ошибкой при попытки запустить сборку boost.
PM MAIL WWW   Вверх
bel_nikita
Дата 12.8.2006, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: 21
Всего: 47



Для начала скачать: bjam.exe
Скопировать bjam.exe в директорию \boost_1_31_1
Потом в этой же директории создать bat-файл следующего содержания:
Код
@echo off
call "c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
bin\bjam "-sTOOLS=vc7_1" "-sBUILD=release debug <threading>single/multi <runtime-link>dynamic/static" stage


Если используется STLport, то
Код
call "c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
set STLPORT_PATH=c:\dev\STLPort-5.0.1
set STLPORT_5_0_1_PATH=c:\dev\STLPort-5.0.1
set STLPORT_VERSION=5.0.1
bin\bjam "-sTOOLS=vc7_1-stlport" "-sBUILD=release debug <stlport-iostream>on <threading>multi <runtime-link>dynamic/static" stage



--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
Любитель
Дата 14.8.2006, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Самый простой вариант - скачать готовый bjam.exe.
Хотя билдится он вполне нормально. Проверено на трёх VS (шестёрка, 2003, 2005) и на MinGW (3.4.2 вроде бы).
По-моему у тебя просто обрываются пути в переменных окружения (возможно из-за каких-либо пробелов). Ты их сам прописывал?
Неважно ставил ли ты студию или фриварный компилер (Command Line Tools) в меню программ у тебя есть ялычок для консольки с правильнопрописанными всеми путями. Запусти его и пиши "build vc7". Когда всё компильнётся (надеюсь нормально) копирни из папки bin.ntx86 (а если из 64-битной консольки в 2005-ой, то bin.ntx64) файл bjam.exe в корневой каталог буста. Перейди в консольке в этот каталог и пиши bjam "-sTOOLS=vc7_1" "--prefix=базовая пака для буста" "--with-python-root=путь к питону" install. Жди. У тебя будут готовы дебаг и релиз версии со всеми причиндалами.


--------------------
PM MAIL ICQ Skype   Вверх
Arkadiy
Дата 15.8.2006, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 21.9.2005

Репутация: нет
Всего: нет



stlport неиспользую(он у меня почемуто непроходит unit testы), при вызове батника:
 
Цитата

 call "c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
 bin\bjam "-sTOOLS=vc7_1" "-sBUILD=release debug <threading>single/multi <runtime-link>dynamic/static" stage
 

 получаю:
 
Цитата

 ******************************************************
 Building Boost.Iostreams with bzip2 support disabled.
 To enable bzip2, consult the Boost.Iostreams documentation
 ******************************************************
 ******************************************************
 Building Boost.Iostreams with zlib and gzip support disabled.
 To enable zlib and gzip, consult the Boost.Iostreams documentation
 ******************************************************
 ---------------------------------------------------------------------
 *** If you don't need Boost.Python, you can ignore this section  ***
 *** pass --without-python to suppress this message in the future ***
 
 skipping Boost.Python library build due to missing or incorrect configuration
 
 couldn't find Python.h in "c:/Python24/include"
 
 You can configure the location of your python installation by setting:
 PYTHON_VERSION - The 2-part python Major.Minor version number (e.g.
                  "2.2", NOT "2.2.1")  - currently "2.4"
 
 PYTHON_ROOT    - automatically configured from PYTHON_VERSION if not
                  otherwise set ; currently "c:/Python24"
 
 The following are automatically configured from PYTHON_ROOT if not
 otherwise set:
 
     PYTHON_LIB_PATH       - path to Python library object; currently
                             "c:/Python24/libs"
 ---------------------------------------------------------------------
 Building Boost.Regex with the optional Unicode/ICU support disabled.
 Please refer to the Boost.Regex documentation for more information
 (and if you don't know what ICU is then you probably don't need it).
 F:\lib\boost_1_33_1\tools/build/v1\allyourbase.jam:645: in C++
 rule C++-action unknown in module 
 F:\lib\boost_1_33_1\tools/build/v1\allyourbase.jam:1142: in Object
 F:\lib\boost_1_33_1\tools/build/v1\allyourbase.jam:1207: in Objects
 F:\lib\boost_1_33_1\tools/build/v1\boost-base.jam:150: in dll-files
 F:\lib\boost_1_33_1\tools/build/v1\boost-base.jam:1969: in subvariant-target
 F:\lib\boost_1_33_1\tools/build/v1\boost-base.jam:2406: in stage
 Jamfile:224: in load-jamfiles
 F:\lib\boost_1_33_1\tools\build\v1\bootstrap.jam:21: in boost-build
 F:\lib\boost_1_33_1\boost-build.jam:16: in module scope
 

 
 пробовал ещё вот так:
 
Цитата

 call "c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
 bjam "-sTOOLS=vc-7_1" install
 

 получил вот это:
 
Цитата
******************************************************
 Building Boost.Iostreams with bzip2 support disabled.
 To enable bzip2, consult the Boost.Iostreams documentation
 ******************************************************
 ******************************************************
 Building Boost.Iostreams with zlib and gzip support disabled.
 To enable zlib and gzip, consult the Boost.Iostreams documentation
 ******************************************************
 ---------------------------------------------------------------------
 *** If you don't need Boost.Python, you can ignore this section  ***
 *** pass --without-python to suppress this message in the future ***
 
 skipping Boost.Python library build due to missing or incorrect configuration
 
 couldn't find Python.h in "c:/Python24/include"
 
 You can configure the location of your python installation by setting:
 PYTHON_VERSION - The 2-part python Major.Minor version number (e.g.
                  "2.2", NOT "2.2.1")  - currently "2.4"
 
 PYTHON_ROOT    - automatically configured from PYTHON_VERSION if not
                  otherwise set ; currently "c:/Python24"
 
 The following are automatically configured from PYTHON_ROOT if not
 otherwise set:
 
     PYTHON_LIB_PATH       - path to Python library object; currently
                             "c:/Python24/libs"
 ---------------------------------------------------------------------
 Building Boost.Regex with the optional Unicode/ICU support disabled.
 Please refer to the Boost.Regex documentation for more information
 (and if you don't know what ICU is then you probably don't need it).
 ...found 13121 targets...
 
 ...updating 5137 targets...
 MkDir1 C:\Boost

 

 если на диске с создать папку Boost, то в следующий раз:
 
Цитата

 ...updating 5136 targets...
 MkDir1 C:\Boost\lib
 

 в чём я ошибся?
PM MAIL   Вверх
Любитель
Дата 20.8.2006, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Во-первых, тебе сказали что сжатие в Boost.Iostreams работать не будет (а оно тебе надо), т. к. у тебя не прописаны пути к либам bzip2, gzip и zlib, скорее всего нет и самих либ.
Кроме того у тебя нет Питона => не будет работать Boost.Python.
Насчёт разницы в циферках - создание папки это одна из целей (target). Так что ты просто помог беджаму  smile 


--------------------
PM MAIL ICQ Skype   Вверх
Arkadiy
Дата 21.8.2006, 02:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 21.9.2005

Репутация: нет
Всего: нет



Любитель,
bjam после вывода
...updating 5137 targets...
 MkDir1 C:\Boost
перестаёт работать, если создать эту папку, то он перестаёт работать после:
 ...updating 5136 targets...
 MkDir1 C:\Boost\lib
и так далее...

boost смог скомпилить только под 32 битной виндой smile
PM MAIL   Вверх
Любитель
Дата 24.8.2006, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Извиняюсь, чуток не дочитал.
Вообще не понимаю, у меня нормально компилится на x64.


--------------------
PM MAIL ICQ Skype   Вверх
Любитель
Дата 26.8.2006, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



ОК.
Проверил весь процесс в чистую сначала до конца. Имеем:
Во-первых, в стандартном build.bat для bjam не предусмотрено возможность наличия скобок в именах папок (например, "C:\Program Files (x86)"). Ессно я это дело исправил, да и вообще улучшил поддержку x64-систем.
Во-вторых в исходниках беджама с 1.33 версии буста (а мож и раньше) небольшая ошибка (по-крайней мере в .tar.gs - архиве). Для исправления нужно исправить файлы в папке modules.
В-третьих, с 2003-ей студией ты не сможешь компилить для x64. Т. е. компилить ты сможешь, но полученные проги будут работать через WOW64, т. е. это x86-проги. Настоятельно рекомендую достать 2005-ую студию.

Как билдить:
1. Start => Programs => Microsoft Visual Studio 2005 => Tools => VS 2005 Win64 Command Line (или подобное с 2003-ей, которую, как я уже сказал, надо анинсталлить с компа).
2. В полученной консольки переходим (не забываем юзать табы и шифт-табы для автокомплита имён папок и файлов) в папку буста, затем tools => build => jam_src (cd t{tab}\b{tab}{tab}{tab}\j{tab}{enter}).
3. Пишем build.bat. Ждём. В папке bin.nt (для x64-версии) или bin.nt.x86 (для обычной) появляетя bjam.exe (сама папка в jam_src). Его копируем в корень буста (куда мы распаковали архив).
4. Цедехаемся в эту папку: cd ..\..\..\ {enter}
5. Пишем 
Код

bjam "-sTOOLS=vc-8_0" "--prefix="C:\Libs\Boost" --without-python -sNO_COMPRESSION=1 install
и давим ентер. Эта строка для установки буста без поддержки сжатия в иостримз и без питон-либы в папку C:\Libs\Boost для VC+ 8.0, для 7.1 соответственно заменяем vc-8_0 на vc-7_1.
6. Ждёмс. Получаем в указанном нами каталоге (C:\Libs\Boost) папки инклюд и либ файлов. Прописываем в студии каталоги и можно работать smile

Прилагаю архив, с исправлениями для jam_src (build.bat + modules) и откомпиленным на x64 bjam.exe (как доказательство  smile )

Это сообщение отредактировал(а) Любитель - 26.8.2006, 17:17


--------------------
PM MAIL ICQ Skype   Вверх
Любитель
Дата 26.8.2006, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Что-то файл не лепится. Пишет мол я не могу прилепливать такой тип файлов  smile 
Вообще кому надо - сброшу на e-mail.


--------------------
PM MAIL ICQ Skype   Вверх
Dark Elf
Дата 26.8.2006, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 576
Регистрация: 26.12.2003
Где: Брисбен

Репутация: 9
Всего: 10



Borland C++ Builder 6

Код

@echo off
set BCCROOT=C:\Program Files\Borland\CBuilder6
set PYTHON_ROOT=C:\Python24
set PYTHON_VERSION=2.4
bjam "-sTOOLS=borland" "-sBUILD=release <stlport-iostream>on <threading>multi <runtime-link>static/dynamic"


MinGW

Код

@echo off
set PYTHON_ROOT=C:\Python24
set PYTHON_VERSION=2.4
bjam "-sTOOLS=mingw" "-sBUILD=release <stlport-iostream>on <threading>multi <runtime-link>static/dynamic"


Visual C++ 6

Код

@echo off
call "c:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT"
set STLPORT_PATH=c:\STLPort-4.6.2
set STLPORT_4.6_PATH=c:\STLPort-4.6.2
set STLPORT_VERSION=4.6
set PYTHON_ROOT=C:\Python24
set PYTHON_VERSION=2.4
bjam "-sTOOLS=msvc-stlport" "-sBUILD=release <stlport-iostream>on <threading>multi <runtime-link>static/dynamic"


Visual C++ 7.1

Код

@echo off
call "c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
set STLPORT_PATH=c:\STLPort
set STLPORT_5_PATH=c:\STLPort
set STLPORT_VERSION=5
set PYTHON_ROOT=C:\Python24
set PYTHON_VERSION=2.4
bjam "-sTOOLS=vc-7_1-stlport" "-sBUILD=release <stlport-iostream>on <threading>multi <runtime-link>static/dynamic"


Visual C++ 8

Код

@echo off
call "c:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat"
set STLPORT_PATH=c:\STLPort
set STLPORT_5_PATH=c:\STLPort
set STLPORT_VERSION=5
set PYTHON_ROOT=C:\Python24
set PYTHON_VERSION=2.4
bjam "-sTOOLS=vc-8_0" "-sBUILD=release <stlport-iostream>on <threading>multi <runtime-link>static/dynamic"



--------------------
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
TochkaKrovi
Дата 4.2.2007, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 4.2.2007

Репутация: нет
Всего: нет



помогите плиз, буст юзаю впервые.

при попытке собрать bjam.exe вылезает постоянно строка:
Непредвиденное появление: \Utilities\Bin\x86.

Причем не важно что в параметрах build.bat ввожу!
Пользуюсь MVC2003


Тут советуют взять готовый bjam.exe! хех дык где его взять-то, весь инет облазил, и без результатов  smile 
PM MAIL   Вверх
Daevaorn
Дата 4.2.2007, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 51
Всего: 70



Цитата(TochkaKrovi @  4.2.2007,  21:58 Найти цитируемый пост)
Тут советуют взять готовый bjam.exe! хех дык где его взять-то, весь инет облазил, и без результатов  

меня такие заявления всегда смешат. в третьем сообщении данной темы дается ссылка. пару кликов и вот:
http://sourceforge.net/project/downloading...ip&29191978
PM MAIL WWW   Вверх
Любитель
Дата 5.2.2007, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 24
Всего: 92



Daevaorn, для Win x64 кстати нету готового. А build.bat для bjam (стандартный) не работает. Могу объяснить почему - потому что на x64 %ProgramFiles% для x86 процессов равна"C:\Program Files (x86)". (по дефолту). "Ну и что?" - скажите вы.  А здесь начинает тупить парсер бат-файлов: переменные а батниках работают через что-то нечто и их значения подставляются перед парсингом строки. А скобки вроде как в ифах используются - ну типа фигурных в сях. В итоге парсер просто захлёбывался. Я этот батник перписал в своё время. Немного извратно правда (ну не профи я в батниках - мож какие хитрости не знаю). Понаставил короче вызывов функций (call на метку) или как это в батниках назвать - но работало. ТЕперь у меня есть "пропатченный" build.bat + bjam.exe for ntx64. Вопрос на засыпку - почему нельзя было рабоатть через bjam for x8 - а фиг его, ну у меня он вываливался с ошибками. Я забил и сделал по своему.


--------------------
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1107 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.