LINUX.ORG.RU

И снова установка boost


0

1

Товарищи, вчера целый день потратил на то, чтобы на две операционки поставить данную библиотеку. С виндой проблем нет, а вот с линуксом появились. Скажите, что я делаю неправильно? Версия 1.51

Открыл офф сайт и по списку пошел

1. Скачал

2. Выполнил ./bootstrap.sh

3. Выполнил ./b2

4. Появившуюся папку stage/libs добавил в перенные среды

Если указывать компилятору путь к каждой библиотеке, то все норм, но это ни разу не хорошо. Что нужно сделать (еще/по-другому), чтобы при компиляции можно было писать, например -lboost_thread или -lboost_system?

Пардон за такой УГ вопрос, но блин, пока проблемы с основами.


добавил в перенные среды

Не нужно. Обернул в скриптик и нормально. Вдруг захочешь две версии буста юзать одновременно?

Если указывать компилятору путь к каждой библиотеке, то все норм, но это ни разу не хорошо. Что нужно сделать (еще/по-другому), чтобы при компиляции можно было писать, например -lboost_thread или -lboost_system?

cmake, может слышал? :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 2)
Ответ на: комментарий от theNamelessOne

А почему бы не попробовать поставить Boost через пакетный менеджер? Или у тебя Slackware?

Ггг. А какая связь? Дело не в слаке и не в бусте, а в рукахподходе к делу.

slackwarrior ★★★★★
()
Ответ на: комментарий от waker

Пацтол... Дело конечно не в «простейшем приложении» :) Не в инклудах внутри инклудов и циклических ссылках :) А буст достаточно один раз собрать - и больше ничего никуда не «укладывается».

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

При чем здесь руки? Если есть boost в репах и устраивает номер версии, то не проще ли скачать с реп?

Или в Слаке уже есть нормальные централизованные репозитории? (это не вброс, мне и вправду интересно знать)

theNamelessOne ★★★★★
()
Ответ на: комментарий от theNamelessOne

Если есть boost в репах и устраивает номер версии, то не проще ли скачать с реп?

В случае буста - это бред. Потому что чаще нужен не тот, который в репах, и не весь, а тот, которым пользовались разработчики простейшего приложения укладывающещего на лопатки 4-x ядерный xeonдействительно огромной библиотеки FIX-протокола, которая собирается от силы 40 минут при условии наличия собранного как надо (не все подряд) буста (15 минут или небольшой кофе-брейк :)) - а с ней уже генерится вагон и тележка серваков и клиентов в CC на виртуальном билдсервере (все «тормоза сборки» какие ни есть - только из-за кода самих серваков и клиентов), на котором еще легко тусуется пара проектов со своими сборками буста в изолированных песочницах (это потому, что не из реп) - и, ЧСХ, никто не плачет что что-то «укладывается на лопатки»:) (потому что не инклюдят чего-нипопадя «на всякий случай» в хедеры, а в интерфейсных заголовках огромной библиотеки только самый минимум)

slackwarrior ★★★★★
()
Ответ на: комментарий от theNamelessOne

есть нормальные централизованные репозитории?

Мне почему-то хватает слакбилда и раз в пару лет - обновления до куррент :)

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

нет. буст у меня уже был установлен из репов.

waker ★★★★★
()
Ответ на: комментарий от slackwarrior

Пацтол... Дело конечно не в «простейшем приложении» :) Не в инклудах внутри инклудов и циклических ссылках :) А буст достаточно один раз собрать - и больше ничего никуда не «укладывается».

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

waker ★★★★★
()
Ответ на: комментарий от slackwarrior

А буст достаточно один раз собрать - и больше ничего никуда не «укладывается».

А вот это 4.2, добрая половина буста - это хидер-онли либы.

Dudraug ★★★★★
()
Ответ на: комментарий от waker

на работе занимаюсь разработкой игр под 3 основные платформы, на C++. буст и qt не используем, и прекрасно себя чувствуем.

Плюсую. По случайному совпадению тоже на работе занимаюсь разработкой игр под Шindows, Xbox 360, PS 3 на С++. Используем свой велосипед вместо STL и всяких бюстов.

anonymous
()
Ответ на: комментарий от slackwarrior

Все норм. 1_44_0 встала как родная. Проблемы были с последней 1_51_0. Я же писал, что используется старый компилятор. А насчет рук - да, с обновлением компилятора в отсутствии интернета на конкретной машине, не сталкивался

Burns
() автор топика
Ответ на: комментарий от Dudraug

Ггг. Можно подумать они тебе все нужны одновременно в одном приложении (или цель - укладывать на лопатки xeon, а не собрать приложение?). Или ты (ССЗБ), поведясь на лозунг «header only», никогда не делал

bjam2 --tool=gcc <список сборки действительно часто нужных библиотек>

slackwarrior ★★★★★
()
Ответ на: комментарий от anonymous

Мимо. В Slackware бюст даже ставить не нужно, он идет из коробки.

Есть или не есть - вообще дело десятое. Кому нужен, обычно знают где взять и, самое главное, как пользоваться :)

slackwarrior ★★★★★
()
Ответ на: комментарий от waker

boost зло, особенно в опенсорс программах

Ой да ладно, там почти все библиотеки — header-only, явной линковки раз-два, и обчёлся.

one_more_hokum ★★★
()
Ответ на: комментарий от waker

сборка простейшего приложения из 20 cpp файлов укладывает 4-ядерный xeon на лопатки

Ты полную грамматику плюсов на Spirit-е конпелируешь, что ли?

one_more_hokum ★★★
()
Ответ на: комментарий от one_more_hokum

Ой да ладно, там почти все библиотеки — header-only, явной линковки раз-два, и обчёлся.

тормозит компиляция, а не линковка

waker ★★★★★
()
Ответ на: комментарий от one_more_hokum

Ты полную грамматику плюсов на Spirit-е конпелируешь, что ли?

я писал выше, что конкретно я компилировал

waker ★★★★★
()
Ответ на: комментарий от slackwarrior

При чем тут bjam, хидер онли не надо собирать вообще. Но их содержимое - это круто закрученные шаблоны, которые будут при каждой сборке раскрываться и обрабатываться.

Dudraug ★★★★★
()
Ответ на: комментарий от Dudraug

Еще раз, ищи проблему в своем компе. Буст тут не при чем.

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

waker ★★★★★
()
Ответ на: комментарий от Dudraug

ps: не стоит меня пытаться убедить, что буст конфетка. я все равно останусь при своем мнении, основанном на личном опыте. тебя тоже убеждать ни в чем не собираюсь. нравится — пользуйся.

waker ★★★★★
()
Ответ на: комментарий от Dudraug

это круто закрученные шаблоны, которые будут при каждой сборке раскрываться и обрабатываться

не надо собирать вообще

Ггг. «Это буст ничего не поделаешь» (TM) утешайся этой мыслью если ты на самотек пустишь зависимости, инстанцирование и бездумно будешь включать хидеры в хидеры - okay.jpg :)

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

Бл*ть, я о том, что фраза «буст надо собирать только один раз» не верна, ибо половина буста каждый раз собирается заново. Та самая «хидер-онли» я хотел лишь это сказть, указать на неверную фразу. А ты как типичное школоло влезло со своим «гггг» лишь бы похвастаться, как ты клево умеешь кодить.

Dudraug ★★★★★
()
Ответ на: комментарий от slackwarrior

Между прочим я сторонник буста, просто я отметил неверность высказывания про «нужно собрать лишь единожды»

Dudraug ★★★★★
()
Ответ на: комментарий от slackwarrior

Это ты школоло, которое тупо умеет только троллить. При этом совершенно не умеешь вести спор, принимая желаемое за действительное. Тебе, дурочок, говорили совсем о другом, а там отвечаешь свое «ггг», даже не пытаясь вникнуть в то, что тебе говорят, ну или почитать историю разговора например. Хотя скорее всего ты это делаешь специально, ибо зеленый и толстый. Ты мне неприятен. Уйди.

Dudraug ★★★★★
()
Ответ на: комментарий от waker

даже мышь не двигается

выкинь свой дистрибутив/ось на помойку, пусть там лежит рядом с бустом

wota ★★
()
Ответ на: комментарий от Dudraug

«В интернете кто-то неправ» (ТМ) Но это не мешает тебе жрать кактус. Что еще можно сказать о человеке, который неизменно ведется? Ты же не можешь не ответить на это комментарий? Или можешь?

Ты мне неприятен. Уйди.

Зачем? Ты такой забавный.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от Burns

Используется gcc 3.2.1

С такой древностью я бы на многое не рассчитывал. Ты бы еще 2.95 взял

Очень хочется воспользоваться boost::thread

Возможно, с более старой версией буста соберется больше

annulen ★★★★★
()
Ответ на: комментарий от Dudraug

совершенно не умеешь вести спор

4.2, кстати, ведут дискуссию, которая куда-то ведет. Спор «вести» бессмысленно: не для того затевается - в споре никому не интересно мнение оппонента, так что все впорядке.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.