Qwt и boost:: сигналы
Мой проект использует оба сигнала Qt (включая Qwt) и Boost::. Как известно, их макросы несовместимы друг с другом. Я скомпилировал свой проект с CONFIG += no_keywords
и переименовал все макросы Qt в верхний регистр, т.е. signals = Q_SIGNALS
, В проекте больше нет ошибок, но теперь у меня есть ошибки в Qwt включает, как это
/usr/include/qwtplot3d/qwt3d_extglwidget.h:101:1: ошибка: "сигналы" не называют тип /usr/include/qwtplot3d/qwt3d_extglwidget.h:116:8: ошибка: ожидается ":" перед "слотами" /usr/include/qwtplot3d/qwt3d_extglwidget.h:116:8: ошибка: "slots" не называет тип
Похоже, что Qwt все еще конфликтует с Boost:: сигналов. Что я могу сделать здесь?
1 ответ
Qwt совместим с буст-сигналами - вы говорите о библиотеке под названием QwtPlot3D!
Когда вы хотите использовать сигналы повышения с QwtPlot3D, вы должны пропатчить его реализацию, заменив макросы signal/slot/emit, как вы делали это с вашим кодом.