【问题标题】:SDL init failure, reason is: No available video deviceSDL 初始化失败,原因是:没有可用的视频设备
【发布时间】:2011-01-30 08:23:37
【问题描述】:

我尝试在 Ubuntu 64bit 10.10 上启动我的 avd,但失败并在日志中显示以下内容:

SDL 初始化失败,原因是:没有可用的视频设备

我能用它做什么?

我试图搜索解决方案,有人说它需要 x11/sdl/jdk 库,我都安装了它们,但仍然无法正常工作。

【问题讨论】:

    标签: android avd


    【解决方案1】:

    适用于 Fedora 14 和 16 64 位。

    安装这些包:

    yum install glibc.i686 ncurses-libs.i686 libstdc libstdc++.i686 \
        libzip.i686 libX11.i686 libXrandr.i686 SDL.i686
    

    【讨论】:

    • +1 了不起的人。在安装了我的机器上缺少的每个软件包后,我尝试运行模拟器。安装 libXrandr.i686 后,它工作了!
    • 非常感谢,在 Fedora 17 64 位内核 3.5.2 中完美运行 :)
    • 谢谢!它适用于 Fedora 16 (3.4.2)。软件包 libstdc 不存在,但其他软件包运行良好。
    【解决方案2】:

    我刚刚在 Ubuntu 12.04 64-bit (Precise) 上遇到这个问题,通过安装 32 位版本的 libsdl 解决了:

    sudo apt-get install libsdl1.2debian:i386
    

    【讨论】:

    • 谢谢 - 这是唯一对我有用的 - Kubuntu 64 12.04
    • sudo dpkg --add-architecture i386 && sudo apt-get update 如果无法找到包裹
    【解决方案3】:

    尝试取消设置沿 SDL_* 行的任何环境变量,例如 SDL_VIDEODRIVER。如果这不起作用,请尝试export DISPLAY=:0

    【讨论】:

    • 太糟糕了,这就是我对此的了解程度。后一种解决方案对我有效。
    • FWIW,似乎大多数其他答案都与 SDL 二进制文件的“首次使用”有关; export DISPLAY=:0 为我工作,并且可能与 SSH 初始化脚本更改 X11 转发的所选显示的其他人相关。
    【解决方案4】:

    我终于在安装后让它工作了:

    sudo apt-get install ia32-libs-sdl
    

    【讨论】:

    • 我没有看到任何名为“ia322stdc++6b32”的包,也许你的意思是“lib32stdc++6”?
    【解决方案5】:
    sudo apt-get install libsdl1.2debian:i386
    

    也可以在 Debian/Sid amd64 和外部架构 i386 上工作。

    谢谢crimeminister

    【讨论】:

      【解决方案6】:

      如果在 64 位 linux 系统上工作,您应该使用 emulator64* 命令,而不是名称中不带“64”的 emulator* 命令。

      【讨论】:

        【解决方案7】:

        当使用没有足够权限的用户运行“模拟器”命令时,我得到“SDL 初始化失败”。前任。 jenkins 用户收到错误,但不是 root。

        转到命令行并使用普通用户运行模拟器命令。你应该得到同样的错误。

        然后切换到 root 并再次运行模拟器命令,以查看用户权限或缺少/错误的用户环境变量是否是导致问题的原因。

        【讨论】:

          【解决方案8】:

          https://fedoraproject.org/wiki/User:Hpejakle/Android

          几件事:使用 strace 运行您的仿真器调用,它会告诉您它的侧向...虽然不一定能让您轻松修复它...

          这可能是很多事情,你在 64 位 ubuntu 上的事实告诉我可能缺少库(32 位)。

          查看链接,看看是否有人提出了 Ubuntu 64 的常见问题解答

          祝你好运,

          加里

          【讨论】:

            【解决方案9】:

            以下命令

            sudo apt-get install ia32-libs 
            

            适用于 11.10。

            【讨论】:

              【解决方案10】:
              sudo apt-get install libsdl1.2debian:i386
              

              也适用于 ubuntu 13.10

              感谢犯罪部长

              【讨论】:

                【解决方案11】:

                在 android 部分的 Jenkins 作业配置中取消选中“显示模拟器窗口”。

                SDL init failure, reason is: No available video device

                "[android] Emulator did not appear to start; giving up"

                【讨论】:

                  【解决方案12】:

                  如果你和我一样,不小心手动安装了 SDL 库,下载包并运行:

                  ./configure

                  make

                  sudo make install

                  但随后也使用包管理员安装了它

                  sudo apt-get install libsdl2-dev

                  那么您可能在库之间存在一些冲突。 尝试卸载 pkg 版本

                  sudo apt-get remove --purge libsdl2-dev

                  并在您运行./config 的目录中手动cd 并键入

                  sudo make uninstall

                  之后,您可以从运行的包(通常更可取)重新安装

                  sudo apt-get install libsdl2-dev

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2016-07-06
                    • 1970-01-01
                    • 2023-01-28
                    • 1970-01-01
                    • 2016-05-02
                    • 1970-01-01
                    相关资源
                    最近更新 更多