Я пытаюсь вручную заменить библиотеку на freeradius.
С одной стороны, я установил freeradius с помощью apt-get. Была библиотека "libfoo-2.0.4.so" (назовем ее lib (apt)).
С другой стороны, я использовал источники (из источника apt-get), чтобы изменить библиотеку "libfoo-2.0.4.so" (назовем это lib (src)). Я скомпилировал исходники (./configure, make), чтобы получить эту модифицированную библиотеку (src). (Lib работает нормально, когда я тестирую).

Когда я пытаюсь вручную заменить lib(apt) на lib(src), freeradius segfaults во время вызова этой библиотеки.
Таким образом, кажется, что библиотеки не совместимы.

Может ли это быть из-за проблем с компиляцией? (предварительно скомпилированная версия в сравнении с локальной компиляцией)
Есть идеи?

Спасибо!

1 ответ1

0

Я предполагаю, что какая-то опция сборки, которая использовалась при установке пакета, отсутствовала в исходной версии, которую вы используете (при условии, что изменения в вашем коде не вызвали это - этот вопрос SF может быть хорошим началом для устранения неполадок, которые). По-видимому, вы можете использовать auto-apt для извлечения любых зависимостей во время установки, но, очевидно, нет очевидного инструмента для извлечения параметров сборки, использованных в исходной компиляции.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .