Три способа решения проблемы:
DirectFB имеет бэкенд X11.
$ sudo apt-get install libdirectfb-extra # for Debian and Ubuntu, anyhow $ cat ~/.directfbrc system=x11 force-windowed
Кроме того, DirectFB имеет бэкенд SDL, и SDL имеет бэкенд X11. Кроме того, SDL имеет бэкенд GGI, и GGI имеет X бэкендов. Это немного окольно, но это должно работать :)
Я протестировал его с
$ SDL_VIDEODRIVER=directfb ffplay some_movie.avi
и получил хорошее 640x480 окно с проигрыванием медиа и разделением на уровни обработки DirectFB и ввел, таким образом, я уверен, что это работает.
Вы могли использовать Создателя Изображения Moblin для создания образа диска Moblin, который можно затем выполнить в VM как QEMU. Можно затем протестировать приложение DirectFB в виртуальной машине.
Вы могли разработать (т.е. отредактировать и скомпилировать), Ваше приложение на Вашем рабочем столе Ubuntu, и протестируйте свое приложение на встроенной платформе, на которой это предназначается для работы.
Если встроенные сети поддержки платформ, Вы смогли уменьшать длину своего испытательного шлейфа компиляции редактирования путем запуска приложения непосредственно от доли NFS.
Все три предыдущих ответа - хорошие предложения. Я бы предложил попробовать эфементный ответ, потому что он самый простой. Для более подробной настройки вашего .directfbrc файла, обратите внимание на "man directfbrc".
Другой возможностью будет переключение с X на другой виртуальный терминал (используя CTRL+ALT+F1), запуск вашей программы directfb, а затем обратное переключение X (используя CTRL+ALT+F7).
.Я использовал решение ephemient для запуска приложений DirectFB в среде chroot (целевая файловая система любезно предоставлена buildroot ) в дополнение к Xnest, отдельной среде X, которая запускается в окне текущего X.
$ Xnest -ac :1 &
$ cd $TARGET_DIR # into the target file system root
$ DISPLAY=:1 sudo chroot . usr/bin/df_neo
Таким образом вы можете быть уверены, что не только ваша установка directfb верна, но и все необходимые зависимости установлены внутри chroot ' ed файловая система.