| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > помогите скомпилиорвать boost под vc71 |
| Автор: Arkadiy 12.8.2006, 15:03 | ||||||||||||||
| Компилятор: vc 7.1 Boost Version 1.32.0 Не могу скомпилировать Boost.jam. В документации к бусту Getting started\Install Boost.Jam\Building Boost.Jam написано:
если делаю, как написано, получаю единственную строку:
если запускаю с параметром build.bat vc7 получаю тоже всего одну строчку:
переменные окружения установлены вот так: System Variables:
в build.bat есть явное указание пути C:\Program files\, пробовал менять его на на C:\Program Files (x86)\ ничего не изменилось |
| Автор: Daevaorn 12.8.2006, 21:50 |
| Arkadiy, Лучше найди в интернете уже готовый бинарник bjam.exe. Я сам так делал, потому что у меня собранный лично вылетал с ошибкой при попытки запустить сборку boost. |
| Автор: bel_nikita 12.8.2006, 22:09 | ||||
| Для начала скачать: http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=72941 Скопировать bjam.exe в директорию \boost_1_31_1 Потом в этой же директории создать bat-файл следующего содержания:
Если используется STLport, то
|
| Автор: Любитель 14.8.2006, 22:28 |
| Самый простой вариант - скачать готовый 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. Жди. У тебя будут готовы дебаг и релиз версии со всеми причиндалами. |
| Автор: Arkadiy 15.8.2006, 13:45 | ||||||||||
stlport неиспользую(он у меня почемуто непроходит unit testы), при вызове батника:
получаю:
пробовал ещё вот так:
получил вот это:
если на диске с создать папку Boost, то в следующий раз:
в чём я ошибся? |
| Автор: Любитель 20.8.2006, 20:48 |
| Во-первых, тебе сказали что сжатие в Boost.Iostreams работать не будет (а оно тебе надо), т. к. у тебя не прописаны пути к либам bzip2, gzip и zlib, скорее всего нет и самих либ. Кроме того у тебя нет Питона => не будет работать Boost.Python. Насчёт разницы в циферках - создание папки это одна из целей (target). Так что ты просто помог беджаму |
| Автор: Arkadiy 21.8.2006, 02:47 |
| Любитель, bjam после вывода ...updating 5137 targets... MkDir1 C:\Boost перестаёт работать, если создать эту папку, то он перестаёт работать после: ...updating 5136 targets... MkDir1 C:\Boost\lib и так далее... boost смог скомпилить только под 32 битной виндой |
| Автор: Любитель 24.8.2006, 10:00 |
| Извиняюсь, чуток не дочитал. Вообще не понимаю, у меня нормально компилится на x64. |
| Автор: Любитель 26.8.2006, 10:40 | ||
| ОК. Проверил весь процесс в чистую сначала до конца. Имеем: Во-первых, в стандартном 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. Пишем
6. Ждёмс. Получаем в указанном нами каталоге (C:\Libs\Boost) папки инклюд и либ файлов. Прописываем в студии каталоги и можно работать Прилагаю архив, с исправлениями для jam_src (build.bat + modules) и откомпиленным на x64 bjam.exe (как доказательство |
| Автор: Любитель 26.8.2006, 11:52 |
| Что-то файл не лепится. Пишет мол я не могу прилепливать такой тип файлов Вообще кому надо - сброшу на e-mail. |
| Автор: Dark Elf 26.8.2006, 13:05 | ||||||||||
Borland C++ Builder 6
MinGW
Visual C++ 6
Visual C++ 7.1
Visual C++ 8
|
| Автор: TochkaKrovi 4.2.2007, 20:58 |
| помогите плиз, буст юзаю впервые. при попытке собрать bjam.exe вылезает постоянно строка: Непредвиденное появление: \Utilities\Bin\x86. Причем не важно что в параметрах build.bat ввожу! Пользуюсь MVC2003 Тут советуют взять готовый bjam.exe! хех дык где его взять-то, весь инет облазил, и без результатов |
| Автор: Любитель 5.2.2007, 16:02 |
| Daevaorn, для Win x64 кстати нету готового. А build.bat для bjam (стандартный) не работает. Могу объяснить почему - потому что на x64 %ProgramFiles% для x86 процессов равна"C:\Program Files (x86)". (по дефолту). "Ну и что?" - скажите вы. А здесь начинает тупить парсер бат-файлов: переменные а батниках работают через что-то нечто и их значения подставляются перед парсингом строки. А скобки вроде как в ифах используются - ну типа фигурных в сях. В итоге парсер просто захлёбывался. Я этот батник перписал в своё время. Немного извратно правда (ну не профи я в батниках - мож какие хитрости не знаю). Понаставил короче вызывов функций (call на метку) или как это в батниках назвать - но работало. ТЕперь у меня есть "пропатченный" build.bat + bjam.exe for ntx64. Вопрос на засыпку - почему нельзя было рабоатть через bjam for x8 - а фиг его, ну у меня он вываливался с ошибками. Я забил и сделал по своему. |