Вы можете использовать исполняемый файл c++filt
, который поставляется с вашей цепочкой инструментов, чтобы устранить недостающие символы.Тогда нужно выяснить, какая часть вашего кода не выполняет то, что должна делать.
nm
может использоваться для перечисления символов, определенных в коде.Если вы видите, что символ имеет U в той же строке, он не определен и может привести к этой ошибке.передача -E в gcc / g ++ останавливает компилятор после шага предварительной обработки, что также может быть полезно.
Причины, по которым я имел эту ошибку в прошлом, по существу:
- не строит что-то, что я думал, что строю (это случается с лучшими из нас)
- Согласование искажения символа неожиданным образом