Почему я ДОЛЖЕН использовать --with-boost для ./configure при экспорте переменной PATH для директории boost

Мне бы очень хотелось услышать ваши объяснения и методы решения проблемы, с которой я сталкиваюсь уже так давно.

Я работаю в удаленном кластере, где команда sudo не разрешена, и любая операция над каталогами выше $ HOME ветвью не разрешена ($HOME=/storage/5/trentalove)

Мне нужно настроить

$HOME/external/trentacoollime

с библиотекой boost, которую я установил в $HOME/boost_1_65_1 с использованием источника boost_1_65_1.tar.bz2 из http://www.boost.org/users/history/version_1_65_1.html

(Обратите внимание, что sudo apt-get install libboost-all-dev недопустимо.)

Затем я определяю переменную PATH в .bash_profile и экспортирую как `export PATH = $ HOME / boost_1_65_1: $ PATH '

Однако при настройке в каталоге $ HOME / external / trentacoollime с

./configure

мне было выдано сообщение об ошибке

configure: error: не удается найти версию заголовков Boost> = 1.41.0

Когда я настраиваюсь с

./configure --with-boost=../../boost_1_65_1

Он не дал мне сообщения об ошибке и успешно настроен.

Я предполагаю, что, поскольку я определил и экспортировал переменную PATH в каталог boost, мне не нужно иметь опцию --with-boost=../../boost_1_65_1 при выполнении команды ./configure. Однако мне это было нужно.

Может ли кто-нибудь объяснить, чего мне не хватает?

с. Я сделал то же самое на моей машине с sudo apt-get install libboost-all-dev, который установил boost_1_65_1 в каталоге /usr/include. Тогда я все еще мог бы сконфигурировать $HOME/external/trentacoollime только с опцией ./configure и без --with-boost= ($ PATH определяется так же, как в кластере). Тем не менее, обратите внимание, что я не могу реализовать ту же стратегию в кластере, так как у меня нет разрешения ни на sudo, ни на какие-либо команды mv, cp, ln для /usr/include, которые находятся в более высокой ветви, чем мой каталог $HOME .

0
задан 24 December 2017 в 05:21

0 ответов

Другие вопросы по тегам:

Похожие вопросы: