Я новичок во встроенных linux и графическом стеке в linux. Итак, мы пытаемся запустить wpewebkit (с cog) с пользовательским ядром на Beaglebone Black.
Проблема в том, что cog не запускается:
EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Мы пробовали 2 сценария ios:
- Запуск cog с помощью "cog -P drm-экспериментальный"
- Запуск "weston --tty = 1 --backend = drm-backends.so" и " cog -P fdo "
В последнем сценарии мы заметили, что при запуске weston мы получаем другое сообщение из библиотеки mesa (потом запускается weston, и мы видим рабочий стол weston / wayland на нашей панели TFT):
mesa-loader: failed to open tilcdc (search paths /usr/lib/dri)
failed to load driver: tilcdc
При исследовании сообщения «Не удалось загрузить драйвер: tilcd c» я обнаружил эту тему на форумах TI:
Сотрудник TI говорит что нужны пакеты "ti-gfx" и "ti-sgx-km". Я пытался добавить его через конфигурацию ядра Linux, но у меня не было выбора. Затем я заглянул в конфигурацию Build root и обнаружил, что пакет "ti-sgx-km" есть, но он зависит от сборки ядра Linux внутри сборки root.
с использованием ядра TI как и в beaglebone_qt5_defconfig, мы застряли в процессе сборки, где ядро TI Linux имело только заголовки компилятора до gcc5, а wpewebkit требовался минимум gcc6. Затем мы попытались настроить сборку root для использования репозитория "https://github.com/beagleboard/linux.git" в качестве источника ядра и запустили процесс сборки. Но при сборке модуля "ti-sgx-km" выдается ошибка:
./include/linux/timer.h: In function ‘timer_setup’:
./include/linux/timer.h:179:23: error: cast between incompatible function types from ‘void (*)(struct timer_list *)’ to ‘void (*)(long unsigned int)’ [-Werror=cast-function-type]
__setup_timer(timer, (TIMER_FUNC_TYPE)callback
Мой вывод таков: для правильной инициализации egl нам нужен пакет "ti-sgx", поэтому я нужно как-то добавить это к моему ядру. Если это так, то как мне найти правильный репозиторий ядра, который имеет заголовки компилятора для> = gcc6 и совместимый «пакет ti-sgx-km»
Может быть, я что-то упускаю. Так что любые рекомендации приветствуются.
Версии пакета
cog 0.3.0 0.4.0 (Scenario 1)
libwpe 1.2.0 1.4.0.1
wpewebkit 2.24.2 2.24.2
wpebackend-fdo 1.2.1 1.4.0
mesa3d 19.0.8
wayland 1.17.0
weston rel_imx_4.9.51_8mq_ga
Linux kernel:
https://github.com/beagleboard/linux.git (branch 4.14)
make bb.org_defconfig
make menuconfig
make
Buildroot:
git://git.buildroot.net/buildroot (branch master)
make beaglebone_defconfig
make menuconfig
make