Ошибка компоновщика libgcc: на скрытый символ __aarch64_swp1_acq_rel в libgcc.a ссылается DSOC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Ошибка компоновщика libgcc: на скрытый символ __aarch64_swp1_acq_rel в libgcc.a ссылается DSO

Сообщение Anonymous »

Я пытаюсь связать общую библиотеку, которую не могу контролировать. Эта библиотека имеет неопределенный символ (вывод nm):

Код: Выделить всё

U __aarch64_swp1_acq_rel
Это, кажется, определено в libgcc.a:

Код: Выделить всё

[user@fedora ~]$ nm -a /usr/lib/gcc/aarch64-redhat-linux/12/libgcc.a | grep swp1_acq_rel
0000000000000000 T __aarch64_swp1_acq_rel
[user@fedora ~]$ objdump -t /usr/lib/gcc/aarch64-redhat-linux/12/libgcc.a | grep swp1_acq_rel
0000000000000000 g     F .text  000000000000002c .hidden __aarch64_swp1_acq_rel
Но всякий раз, когда я пытаюсь установить ссылку, я получаю ошибку в заголовке этого вопроса. Я понимаю, что этот символ скрыт для динамического связывания (пожалуйста, подтвердите, если я ошибаюсь). Итак, мой вопрос заключается в том, каков правильный подход к связыванию с этим символом libgcc, когда общая библиотека, которую я использую (и ссылаюсь на нее), не определяет его.
Я ожидал, что это будет возможно. чтобы разрешить этот символ с помощью libgcc.a в моей системе. Почему это скрыто?

Подробнее здесь: https://stackoverflow.com/questions/750 ... is-referen
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»