Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: boost  (Прочитано 4214 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
boost
« : 21 Мая 2011, 00:26:31 »
Доброго времени суток! Ребят. Собственно есть Эклипс и CDT. Собственно есть Win32 аплеты которые висят под бустом. Как мне начать использование буста под никсами? (стоит Ubuntu 10.10) .

andrey_p

  • Гость
Re: boost
« Ответ #1 : 21 Мая 2011, 05:45:14 »
Хотя на Ubuntu можно инсталлировать готовые библиотеки boost (частями или все сразу - libboost-dev-all), но лучше "начать с начала" - скачать и установить самому, чтобы разобраться, что там есть, что надо и как что использовать. Достаточная информация для старта - здесь.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: boost
« Ответ #2 : 21 Мая 2011, 09:49:06 »
Как писать под бустом я вкурсе =)

Дело в том что я вот вообще собрать bjam не могу. Подозреваю кривость рук.

alex@white-house:~/Рабочий стол/boost_1_46_1$ sudo sh  bootstrap.sh --prefix=/home/alex/Рабочий\ стол/boost_1_46_1/lib/
bootstrap.sh: 210: ./tools/build/v2/engine/src/build.sh: Permission denied
Building Boost.Jam with toolset ...
Failed to build Boost.Jam
Consult 'bootstrap.log' for more details

andrey_p

  • Гость
Re: boost
« Ответ #3 : 21 Мая 2011, 13:57:23 »
Да нет. Нормальные у тебя руки. :) Скорее всего это у бустовцев (или в архиваторе проблема - не знаю 7zip сохраняет аттрибуты).

Короче

chmod +x ./tools/build/v2/engine/src/build.sh

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: boost
« Ответ #4 : 22 Мая 2011, 06:45:37 »
Руки может и нормальные, но моск не варит. Там файл INSTALL есть. Осиль пару строк на английском.

andrey_p

  • Гость
Re: boost
« Ответ #5 : 22 Мая 2011, 07:14:42 »
Руки может и нормальные, но моск не варит. Там файл INSTALL есть. Осиль пару строк на английском.

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

Оффлайн Бумер

  • Активист
  • *
  • Сообщений: 996
  • Кто злой, я злой?О_о
    • Просмотр профиля
Re: boost
« Ответ #6 : 22 Мая 2011, 07:24:21 »
Т.е. команда sh ни о чем не говорит?

andrey_p

  • Гость
Re: boost
« Ответ #7 : 22 Мая 2011, 07:29:45 »
Человеку, который использует sudo для установки в свой домашний каталог, может ничего не говорить. И это нормально для начинающих.

И да, хотел сказать видимо, не команда sh, а расширение .sh

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: boost
« Ответ #8 : 22 Мая 2011, 08:52:08 »
Руки может и нормальные, но моск не варит. Там файл INSTALL есть. Осиль пару строк на английском.

Ну это вы абсолютно зря. Нет ни там, ни в ссылке (которая там и составляет единственное его содержание) ничего про то, что боотстрап пытается запустить шелл-файл, у которого нет прав на выполнение.
В этом файле есть ссылка на исчерпывающую инструкцию по установке буста.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: boost
« Ответ #9 : 22 Мая 2011, 19:03:53 »
Хмм теперь так:


alex@white-house:~/Рабочий стол/boost_1_46_1$  sudo bjam --build-dir=/home/alex/Рабочий стол/boost_1_46_1/x64/ toolset=gcc stage
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/tools/gcc.jam:129: in gcc.init from module gcc
error: toolset gcc initialization:
error: no command provided, default command 'g++' not found
error: initialized from /home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/build/project.jam:886
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/build/toolset.jam:38: in toolset.using from module toolset
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/build/project.jam:886: in using from module site-config
/etc/site-config.jam:5: in modules.load from module site-config
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/build-system.jam:257: in load-config from module build-system
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/build-system.jam:361: in load-configuration-files from module build-system
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/build-system.jam:554: in load from module build-system
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/kernel/modules.jam:283: in import from module modules
/home/alex/Рабочий стол/boost_1_46_1/tools/build/v2/kernel/bootstrap.jam:142: in boost-build from module
/home/alex/Рабочий стол/boost_1_46_1/boost-build.jam:17: in module scope from module

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: boost
« Ответ #10 : 22 Мая 2011, 21:20:16 »
http://www.boost.org/doc/libs/1_46_1/more/getting_started/unix-variants.html#easy-build-and-install

Для тех кто не читает по английски
1) качаешь с сайта буста .tar.bz2 тарбол. именно этот самый и никакой другой. именно в нём стоят все права правильно. еще раз повторяю именно с таким расширением по другому работать не будет (.tar.gz тоже подойдет но ты скорее удавишься за лишний метр файла и гребешь себе геморрой со сборкой буста и не пойми какими касяками из за того что файл не был предназначен для сборки под unix-like OS)
2) качаешь и кладёшь в ДОМАШНЮЮ директорию а не на рабочий стол. Я еще с винды не люблю пробелы в именах файлов. вероятнее всего данный пункт не имеет значения но именно так проверено и работает
3) Проверяешь что у тебя установлено всё что надо
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential libicu-dev libbz2-dev zlib1g-dev
4) распаковка boost'а. открываешь терминал и распаковываешь его прямо в домашнюю директорию tar xvf boost_1_46_1.tar.bz2
5) конфигурирование и сборка
cd boost_1_46_1/
./bootstrap.sh --prefix=$HOME/usr --without-libraries=graph,graph_parallel,math,mpi,python,random,signals,test,wave
./bjam
./bjam install

Всё. Буст установлен. лежит в дереве $HOME/usr/
В проектах надо будет прописывать -I$HOME/usr/include -L$HOME/usr/lib
Подойди к этому творчески и осиль что $HOME должно заменяться полным путём к твоему домашнему каталогу
Если понятия не имеешь что это за путь в терминале набери echo $HOME вот этим самым он и должен заменяться

Учи английский!

andrey_p, так что кривые там руки и радиус кривизны очень маленький, руки крюки ажно как крюк у капитана Флинта.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: boost
« Ответ #11 : 22 Мая 2011, 23:08:18 »
Спасибо за помощь, но я не люблю когда меня унижают. Да я идиот но не клинический. И "для тех кто не читает по английски" ткните где написано что "качать под никсы надо именно тот архив" . Я вот такого там не заметил. Да и читать слава богу умею. Так что если хотите помочь, будьте любезны , сдерживайте свои эмоции при себе  :coolsmiley:

Пользователь решил продолжить мысль 22 Мая 2011, 23:53:42:
./bjam install

Такс... стоп. А что оно собирает ? х32 или х64 если у меня стоит ОС х64 ?

И почему так?
./bootstrap.sh --prefix=$HOME/usr --without-libraries=graph,graph_parallel,math,mpi,python,random,signals,test,wave
Зачем исключать те либы?
« Последнее редактирование: 22 Мая 2011, 23:53:42 от Пончик »

andrey_p

  • Гость
Re: boost
« Ответ #12 : 23 Мая 2011, 06:21:19 »
Мда, переехали ТС на ровном месте зачем-то...  ???

Ну знаний действительно не хватает, и информация не совсем точная - пишешь, что есть Eclipse + CDT, но надо было хотя бы "Hello, world" на С++ попытаться скомпилировать с его помощью. Тогда бы и обнаружил, что у тебя g++ не установлен.

Почему исключать библиотеки, ИМО потому что повылазят еще зависимости, которые приведут к ошибкам. Надо сделать так:

sudo apt-get build-dep libboost-all-dev
При этом установятся все зависимости, которые требуются для компиляции всех библиотек boost. А скомпилироваться должно все что надо (x64), в любом случае этот вопрос из серии, на которые ответ - сделай и посмотри.

Оффлайн Пончик

  • Автор темы
  • Любитель
  • *
  • Сообщений: 69
    • Просмотр профиля
Re: boost
« Ответ #13 : 23 Мая 2011, 08:20:55 »
Ох... я же пишу что я дурак но не клинический. 3 года программирования на Винде. + 10 лет опыта работы с виндой. Знаю что здесь это не к чему но просто обидно когда держат за полного идиота. Само собой Хеллоу Ворлд нормально компилится, и не только он. И GCC у меня обновленный.

У меня вывалилось кажется на графах. Есть предположение что Yurror выключил те либы из-за не совместимости.

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: boost
« Ответ #14 : 23 Мая 2011, 13:52:20 »
за 3 с лишним года опыта программирования даже под виндой такие вопросы задают гуглу. и читают доки.
не идиот, не клинический, но читать ты точно не умеешь. глаза поднять не мог??? вот тут и написано какой тарбол качать надо
http://www.boost.org/doc/libs/1_46_1/more/getting_started/unix-variants.html#get-boost

Почему так? мне лень было собирать остальное. Их зависимости тебе уже подсказали как разрулить (я надеюсь ты найдешь нужную строчку именно на этой самой странице).
Учись побольше читать и поменьше обижаться на форумах, когда носом в лужу тыкают.
« Последнее редактирование: 23 Мая 2011, 14:23:31 от Yurror »

 

Страница сгенерирована за 0.081 секунд. Запросов: 25.