【问题标题】:Running SDL application as daemon on embedded linux system在嵌入式 linux 系统上将 SDL 应用程序作为守护进程运行
【发布时间】:2015-03-05 01:22:03
【问题描述】:

我正在开发一个使用 /dev/fb0 帧缓冲区进行图形输出的应用程序。从终端执行时运行良好,但当我尝试将其作为守护进程运行时,它不会在帧缓冲区上输出任何内容。

    pid_t pid, sid;

    pid = fork();
    if (pid < 0) {
        exit(EXIT_FAILURE);
    }

    if (pid > 0) {
        exit(EXIT_SUCCESS);
    }

    umask(0);

    setlogmask (LOG_UPTO (LOG_NOTICE));
    openlog ("nattisserver", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL1);     
    syslog (LOG_NOTICE, "nattisserver daemon starting..", getuid ());

    sid = setsid();
    if (sid < 0) {
        exit(EXIT_FAILURE);
    }

    if ((chdir("/root/")) < 0) {
        exit(EXIT_FAILURE);
    }

    close(STDIN_FILENO);
    close(STDOUT_FILENO);
    close(STDERR_FILENO);

    // My routines for drawing content to the framebuffer
    get_ibus_departures();

    nattis_sdl_init();

    nattis_sdl_draw();

【问题讨论】:

    标签: linux embedded sdl daemon


    【解决方案1】:

    通过在切换到作为守护进程运行之前初始化 SDL 来解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-18
      • 2010-10-20
      • 2023-03-02
      • 2010-11-08
      • 2014-08-07
      • 1970-01-01
      • 1970-01-01
      • 2013-03-09
      相关资源
      最近更新 更多