Почему происходит сбой IDirectFB-> GetDisplayLayer ()? Я пропускаю какие-либо шаги здесь?
IDirectFB * dfb = (IDirectFB*)m_app->platformNativeInterface();
if(dfb){
std::cerr << "######## New resolution is " << width << "x" << height << std::endl;
IDirectFBDisplayLayer *layer = NULL;
DFBDisplayLayerConfig config;
std::cerr << "######## Getting primary IDirectFBDisplayLayer" << std::endl;
/* Get an interface to the primary layer. */
dfb->GetDisplayLayer(dfb, DLID_PRIMARY, &layer); // Crashes here..
if(layer){
DFBResult dres;
std::cerr << "######## Got the primary display layer, setting admin" << std::endl;
// This level allows window stack mode switches
dres = layer->SetCooperativeLevel(layer, DLSCL_ADMINISTRATIVE);
if(dres != DFB_OK){
std::cerr << "######## Error: " << DirectFBErrorString(dres) << std::endl;
}
Код падает на GetDisplayLayer (), и я не уверен, в чем здесь проблема. Мой directfbrc выглядит так -
cat /etc/directfbrc
system=fbdev
fbdev=/dev/fb0
no-cursor
module-dir=/usr/local/lib/directfb-1.7-7/
pixelformat=ARGB
no-hardware
bg-color=00000000
desktop-buffer-mode=backvideo
module-dir=/usr/lib/directfb-1.7-7
Я не вижу ничего плохого в запуске directfb.