Сборка проекта с отключенными динамическими библиотеками Boost - PullRequest
0 голосов
/ 10 августа 2010

Я пытаюсь построить проект с открытым исходным кодом VMWare Open View Client. Проблема, с которой я столкнулся, заключается в том, что я могу собрать ее, следуя их инструкциям, однако моя сборка не включает в себя все зависимости, и поэтому при переходе к ее развертыванию возникает ошибка, указывающая на отсутствие libboost_signals-gcc41-1_34_1.so.1.34.1. Согласно их форумам, кто-то предложил следующее: попробуйте создать boost с отключенными динамическими библиотеками. Проблема, если я понятия не имею, как это сделать.

Идеи?

Для справки: .configure && make.
Я просмотрел параметры ./configure, и есть --enable-static-icu, но для --enable-static-boost ничего нет.

Есть несколько необязательных флагов, которые могут быть переданы непосредственно компилятору C / C ++, но я не уверен, какими будут эти параметры.

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

Спасибо за любой предложенный вклад: -D

Ответы [ 2 ]

0 голосов
/ 12 августа 2010

Чтобы ответить на ваш вопрос, статические библиотеки должны быть собраны по умолчанию - не могли бы вы проверить, что их там нет. Если нет, то вы должны добавить 'link = static' в bjam, либо напрямую, либо отредактировав сгенерированный Makefile.

На более высоком уровне я не совсем уверен, что вы пытаетесь сделать, или почему вы получили эту рекомендацию. Сообщение об ошибке означает, что вам не хватает .so на целевой машине. Почему бы вам не скопировать и не настроить LD_LIBRARY_PATH? Потому что даже если у вас есть статические библиотеки для Boost, вам все равно придется настраивать свою программу для использования статических библиотек, а не общих.

0 голосов
/ 11 августа 2010

Во-первых, нет, вы не используете 'configure' для создания boost. Вы используете BJAM.

Кажется, проблема в том, что вы не развертываете зависимые библиотеки вместе с исполняемым файлом. Убедитесь, что на целевой машине также есть библиотеки наддува.

Кроме того, любой проект, использующий «configure» для создания make-файлов, выдает полный список параметров, если вы запустите «configure --help».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...