qscintilla2: неопределенные символы для архитектуры x86_64
У меня есть статический Qt и перекомпилирована qscintilla2_qt5.a (2.10) на macOS 10.12.4. Когда я компилирую свой проект, он печатает эту ошибку:
Undefined symbols for architecture x86_64:
"qRegisterDraggedTypes(QStringList const&)", referenced from:
initialiseRectangularPasteboardMime() in libqscintilla2_qt5.a(MacPasteboardMime.o)
"QMacPasteboardMime::count(QMimeData*)", referenced from:
vtable for RectangularPasteboardMime in libqscintilla2_qt5.a(MacPasteboardMime.o)
"QMacPasteboardMime::QMacPasteboardMime(char)", referenced from:
initialiseRectangularPasteboardMime() in libqscintilla2_qt5.a(MacPasteboardMime.o)
"QMacPasteboardMime::~QMacPasteboardMime()", referenced from:
RectangularPasteboardMime::~RectangularPasteboardMime() in libqscintilla2_qt5.a(MacPasteboardMime.o)
RectangularPasteboardMime::~RectangularPasteboardMime() in libqscintilla2_qt5.a(MacPasteboardMime.o)
"typeinfo for QMacPasteboardMime", referenced from:
typeinfo for RectangularPasteboardMime in libqscintilla2_qt5.a(MacPasteboardMime.o)
1 ответ
Решение
Это было необходимо добавить QT += macextras в *.pro файл, когда Qt статически собирался. Я не знаю почему, но когда программа была встроена в общедоступный Qt, она работала без этого macextras.