История изменений
Исправление
ahdenchik,
(текущая версия)
:
Например, может пригодиться опция –trace-symbol=….
Этот способ оказался самым действенным - сразу всё прояснилось
Проблема типовая, оказывается, и часто случается как раз при статической компиляции с .init_array
Суть: как уже тут выше отмечали, линковка .o
файла из .a
происходит не просто так, а только когда что-то из этого .o
было заюзано или же принудительно указан линкеру символ, объектный файл или ключ --whole-archive
.
Поэтому, если у нас такой вот конструктор или, например, функция, которая внутри себя регистрирует где-то в наружной системе другой символ, то возникает эта проблема.
В моём случае достаточно оказалось заюзать символы из объектника и проблема вылечилась
Исходная версия
ahdenchik,
:
Этот способ оказался самым действенным, сразу всё прояснилось
Проблема типовая, оказывается, и часто случается как раз при статической компиляции с .init_array
Суть: как уже тут выше отмечали, линковка .o
файла из .a
происходит не просто так, а только когда что-то из этого .o
было заюзано или же принудительно указан линкеру символ, объектный файл или ключ --whole-archive
.
Поэтому, если у нас такой вот конструктор или, например, функция, которая внутри себя регистрирует где-то в наружной системе другой символ, то возникает эта проблема.
В моём случае достаточно оказалось заюзать символы из объектника и проблема вылечилась