2017-02-20 2 views
0

Я знаю, что «путь поиска» исполняемого файла или библиотеки можно установить с помощью опции компоновщика -rpath. Это полезно, когда зависимости устанавливаются в нестандартных местах, которые обычно не рассматриваются загрузчиком объектов, и обычно считаются превосходящими настройку переменной среды LD_LIBRARY_PATH.Как можно очистить библиотеку/исполняемый файл RPATH до другого значения?

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

Я действительно предпочел бы используя тот же пакет как для теста интеграции, так и для производственной платформы. Моя идея - предоставить сценарий установки, который выбирает правильный целевой каталог, а затем исправляет библиотеку/исполняемый RPATH до правильного значения.

В этот момент я обнаружил, что я не знаю ...

Как библиотека/исполняемый RPATH быть исправлен на другое значение?

Я предполагаю, что для этого есть инструмент командной строки, но я этого не знаю.

В случае, если это важно, я использую CMake setup для создания и создания пакета .tgz (cpack -G TGZ). «Реальные» пакеты (RPG, DEB), к сожалению, не являются опцией.

ответ