directfb をクロスコンパイルして directfb の例を実行しようとしています
directfb ソースをダウンロードし、同じものをクロスコンパイルしました。directfb のサンプルを実行中に問題が発生しました。
次のプログラムを使用してキャラクターデバイス(/dev/fb0)を登録しました(.koファイルとして作成)
static struct file_operations fops=
{
.open=dev_open, //To open device - file operation
};
int init_module(void)
{
static dev_t dev_major;
static struct cdev*dev_cdev;
int ret=-EIO;
/* register char-dev */
dev_major=MKDEV(29,0);
ret=register_chrdev_region(dev_major,1,"fb0");
if (ret)
{
printk(KERN_ERR "fb0 : can't get chrdev %d\n",29);
return ret;
}
/* allocate cdev */
dev_cdev=cdev_alloc();
dev_cdev->ops=&fops;
/* cdev_init(&dev_data.cdev,&dev_file_ops); */
ret=cdev_add(dev_cdev,dev_major,1);
if (ret)
{
printk(KERN_ERR "fb0 : can't allocate cdev\n");
return ret;
}
return 0;
}
その後、次のコマンドを実行しました。
# insmod directfb_ko.ko
# mknod /dev/fb0 c 29 0
次に、Directfb の例を実行しようとしました。次のエラーが発生しました
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.4.1 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2009 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2015-11-19 10:49)
(!) DirectFB/FBDev/vt: FBIOGET_CON2FBMAP failed!
--> Inappropriate ioctl for device
(!) DirectFB/FBDev/vt: FBIOPUT_CON2FBMAP failed!
--> Inappropriate ioctl for device
(*) Direct/Thread: Started 'VT Switcher' (-1) [CRITICAL OTHER/OTHER 0/0] <8388608>...
(*) Direct/Thread: Started 'VT Flusher' (-1) [DEFAULT OTHER/OTHER 0/0] <8388608>...
(!) DirectFB/FBDev: Could not get fixed screen information!
--> Inappropriate ioctl for device
(!) DirectFB/Core: Could not initialize 'system_core' core!
--> Initialization error!
(!) Tools/Screen: DirectFBCreate() failed!
--> Initialization error!
このエラーについて何か考えはありますか。この問題を解決するために私を助けてください。