Ошибка сборки: заголовки QT до X11
Я использую Buildroot для создания Rootfs для встроенной системы
При попытке собрать QT я получаю эту ошибку сборки:
`compiling egl/qegl_qws.cpp
egl/qegl_qws.cpp:1:0: warning: switch -mcpu=cortex-a15 conflicts with -march=armv7-a switch [enabled by default]
/****************************************************************************
^
moc embedded/qsoundqss_qws.h
moc embedded/qcopchannel_qws.h
moc embedded/qdecorationplugin_qws.h
moc embedded/qdirectpainter_qws.h
moc embedded/qwsmanager_qws.h
In file included from /home/hamzah/buildroot/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/X11/Xlib.h:44:0,
from /home/hamzah/buildroot/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/EGL/eglplatform.h:118,
from /home/hamzah/buildroot/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/EGL/egl.h:36,
from egl/qegl_p.h:66,
from egl/qegl_qws.cpp:46:
../../include/QtCore/../../src/corelib/kernel/qcoreevent.h:70:9: error: expected identifier before numeric constant
None = 0, // invalid event
^
../../include/QtCore/../../src/corelib/kernel/qcoreevent.h:70:9: error: expected '}' before numeric constant
../../include/QtCore/../../src/corelib/kernel/qcoreevent.h:70:9: error: expected unqualified-id before numeric constant`
Это связано с тем, что в заголовке X11 для None задано значение 0, что создает конфликт при использовании в качестве члена перечисления. Из Интернета мне посоветовали ставить заголовки X11 ПОСЛЕ заголовков QT. Я попробовал это, где я мог найти, но это не решает проблему. Я думаю, что я пропустил некоторые файлы
Я попытался #undef символа и #define позже, но это произвело больше ошибок, как и ожидалось. Кто-нибудь имел дело с этим раньше и мог сказать мне точное место для внесения изменений, или мне нужно самому просматривать сумасшедшее количество файлов, чтобы внести изменения?
Кроме того, если у вас есть какие-либо советы, чтобы сделать это легко, любезно поделиться. Я бы даже хотел узнать имя всех заголовочных файлов X11
1 ответ
Пожалуйста, сообщите о вашей ошибке сообществу Buildroot, либо отправив электронное письмо в список рассылки, либо оставив сообщение об ошибке в трекере ошибок проекта. В любом случае, убедитесь, что вы включили версию Buildroot, а также свой полный файл Buildroot .config, чтобы воспроизвести проблему.