Я еще не работал с FreeType, но я думаю, деструкторы определены непосредственно внутри объявления класса.Это означает, что они неявно объявлены как встроенные.В зависимости от вашего компилятора это предотвратит включение деструкторов с внешней связью в любой из сгенерированных файлов библиотеки.
Что теперь делать:
проверьте,пропустили любую из необходимых библиотек для FreeType.В Unix-подобных ОС вы можете проверить с помощью nm, включен ли код деструкторов в файл библиотеки, с помощью команды «nm» (см. Справочную страницу).
Проверьте FreeTypeдокументация, если это известная проблема или существует более новая версия
Измените заголовочные файлы, содержащие эти классы, сделайте деструкторы не встроенными и перенесите их определения в отдельный файл:
класс A {... virtual ~ A () {}}
становится
class A {
...
virtual ~A();
}
и в отдельном файле укажите это:
A::~A() {}