что такое PGC-I-0222-избыточное определение символа

как устранить ошибку компоновщика pgcc&openacc __pgi_uacc_multicorestart, __pgi_uacc_multicoreend

Это дополнительный вопрос после предыдущего.

В сообщении «скомпилировать lbe.c в сообщение lbe.o:» я всегда вижу сообщение «PGC-I-0222-Redundant Definition». Это предупреждение или ошибка? Почему это произошло? Как это исправить?

PGC-I-0222-Redundant definition for symbol __THROW (/usr/include/x86_64-linux-gnu/sys/cdefs.h: 74)
PGC-I-0222-Redundant definition for symbol __extension__ (/usr/include/x86_64-linux-gnu/sys/cdefs.h: 358)

person jjl    schedule 04.12.2017    source источник


Ответы (1)


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

person Mat Colgrove    schedule 04.12.2017
comment
Спасибо за ваш ответ. Это неизбежно или есть что-то в моих кодах, которые я должен изменить? - person jjl; 05.12.2017
comment
Нет, это означало бы изменение системных или заголовочных файлов PGI. Опять же, это просто информационное сообщение, а не то, что вызовет проблемы. Удаление флага -Minform скроет эти сообщения. - person Mat Colgrove; 05.12.2017