Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Odroid XU4 SDL Problem Emulationstation



  • I try to launch emulationstation and I receive this error:

    lvl0: Error initializing SDL!
    No available video device
    lvl0: Renderer failed to initialize!
    lvl0: Window failed to initialize!
    

    This happened after I made update with:

    sudo apt update
    sudo apt upgrade
    sudo apt dist-upgrade
    sudo apt install linux-image-xu3 
    sudo apt install update-manager-core
    sudo do-release-upgrade
    sudo reboot
    

    What could be the problem? It was working fine but after that commands the problem began. I decided to update because I had problems with a 8bitdo gamepad to pair for second time because the message said Already Exists. Then I thoight upgrading should fix the problem and now emulationstation not work as you see the word is when crash in that SDL message the keyboard is dead I need to use ssh only to access and I access fine.

    I tried to follow this tutorial to install latest sdl but not work

    I have the Odroid XU 4 and I installed in the beginning with the guide:

    https://retropie.org.uk/docs/Odroid-XU3-XU4/

    https://forum.outpost2.net/index.php?topic=5978.0

    How can be fixed the problem? I don’t want to loss my information inside.


  • Global Moderator

    @ray3d My guess is that the upgrade has overwritten the SDL libraries added by RetroPie with the distro version. Run the following command:

    sudo $HOME/RetroPie-Setup/retropie_packages.sh sdl2
    

    and this should re-install the RetroPie version of the SDL2 packages.



  • I did your command:

    sudo $HOME/RetroPie-Setup/retropie_packages.sh sdl2
    

    It did a lot of things but says the same:

    lvl0:   Error initializing SDL!
            No available video device
    lvl0:   Renderer failed to initialize!
    lvl0:   Window failed to initialize!
    

    Now reading that maybe x11 has troubles I installed SDL like this:

    sudo apt-get update
    sudo apt-get upgrade
    
     cd ~
    wget https://www.libsdl.org/release/SDL2-2.0.9.tar.gz
    tar zxvf SDL2-2.0.9.tar.gz
    cd SDL2-2.0.9 && mkdir build && cd build
    
    sudo apt-get install build-essential libfreeimage-dev libopenal-dev libpango1.0-dev libsndfile-dev libudev-dev libasound2-dev libjpeg8-dev libtiff5-dev libwebp-dev automake
    
    ../configure --enable-sdl-dlopen --disable-arts --disable-esd --enable-alsa --disable-nas --disable-pulseaudio --disable-esd --disable-video-mir --disable-video-wayland --without-x --disable-video-x11 --disable-x11-shared --disable-video-x11-xcursor --disable-video-x11-xinerama --disable-video-x11-xinput --disable-video-x11-xrandr --disable-video-x11-scrnsaver --disable-video-x11-xshape --disable-video-x11-vm --disable-video-directfb --disable-rpath --disable-video-opengl --disable-video-opengl --enable-video-opengles --host=arm-linux-gnueabihf
    
    make -j 4
    sudo make install
    

    But the same after reboot nothing same error of SDL! I’m making the configurations and tests via SSH and as an user I made pigame (not root) as it was working perfectly before the disaster. What could be the problem now?



  • Any idea what could hallen I have almost 18 hours trying and I can’t figure. Another thing in raspberry to update retropie is first update the script then basic install and you update to the latest. In the odroid how do you update to latest retropie without harm the actual content? Maybe that can solve.



  • I want to add this information I extracted from the commands shown here also:

    sudo find / -name "libSDL2*.so"
    
    /home/game/SDL2-2.0.9/build/build/.libs/libSDL2.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_net.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_image-2.0.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_mixer-2.0.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_ttf.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_ttf-2.0.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_mixer.so
    /usr/lib/arm-linux-gnueabihf/libSDL2-2.0.so
    /usr/lib/arm-linux-gnueabihf/libSDL2.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_net-2.0.so
    /usr/lib/arm-linux-gnueabihf/libSDL2_image.so
    
    sudo find / -name "libGL*"
    
    /usr/lib/arm-linux-gnueabihf/libGLESv2.so
    /usr/lib/arm-linux-gnueabihf/libGLU.so.1.3.1
    /usr/lib/arm-linux-gnueabihf/libGLU.so
    /usr/lib/arm-linux-gnueabihf/libGL.so
    /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2.0.0
    /usr/lib/arm-linux-gnueabihf/libGLdispatch.so
    /usr/lib/arm-linux-gnueabihf/libGLdispatch.so.0
    /usr/lib/arm-linux-gnueabihf/libGLEW.so
    /usr/lib/arm-linux-gnueabihf/libGLU.so.1
    /usr/lib/arm-linux-gnueabihf/libGLX_indirect.so.0
    /usr/lib/arm-linux-gnueabihf/libGLX.so.0
    /usr/lib/arm-linux-gnueabihf/libGLX.so.0.0.0
    /usr/lib/arm-linux-gnueabihf/libGLEW.so.2.0.0
    /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2
    /usr/lib/arm-linux-gnueabihf/libGLESv1_CM.so
    /usr/lib/arm-linux-gnueabihf/libGLESv1_CM.so.1
    /usr/lib/arm-linux-gnueabihf/libGL.so.1
    /usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv2.so
    /usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv2.so.2.0
    /usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv2.so.2
    /usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv1_CM.so
    /usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv1_CM.so.1
    /usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv1_CM.so.1.1
    /usr/lib/arm-linux-gnueabihf/libGLESv1_CM.so.1.0.0
    /usr/lib/arm-linux-gnueabihf/libGLdispatch.so.0.0.0
    /usr/lib/arm-linux-gnueabihf/libGLU.a
    /usr/lib/arm-linux-gnueabihf/libGLX_mesa.so.0.0.0
    /usr/lib/arm-linux-gnueabihf/libGL.so.1.0.0
    /usr/lib/arm-linux-gnueabihf/libGLEW.so.2.0
    /usr/lib/arm-linux-gnueabihf/libGLX.so
    /usr/lib/arm-linux-gnueabihf/libGLX_mesa.so.0
    
     which emulationstation
    
    /usr/bin/emulationstation
    
    apt-cache showpkg libsdl2-dev
    
    Package: libsdl2-dev
    Versions:
    2.0.8+dfsg1-1ubuntu1.18.04.3 (/var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic-updates_universe_binary-armhf_Packages)
     Description Language:
                     File: /var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic_universe_binary-armhf_Packages
                      MD5: 9a82f59c5790721baad7ffc5f181d3d6
     Description Language: en
                     File: /var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic_universe_i18n_Translation-en
                      MD5: 9a82f59c5790721baad7ffc5f181d3d6
     Description Language:
                     File: /var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic-updates_universe_binary-armhf_Packages
                      MD5: 9a82f59c5790721baad7ffc5f181d3d6
    
    2.0.8+dfsg1-1ubuntu1 (/var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic_universe_binary-armhf_Packages)
     Description Language:
                     File: /var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic_universe_binary-armhf_Packages
                      MD5: 9a82f59c5790721baad7ffc5f181d3d6
     Description Language: en
                     File: /var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic_universe_i18n_Translation-en
                      MD5: 9a82f59c5790721baad7ffc5f181d3d6
     Description Language:
                     File: /var/lib/apt/lists/ports.ubuntu.com_ubuntu-ports_dists_bionic-updates_universe_binary-armhf_Packages
                      MD5: 9a82f59c5790721baad7ffc5f181d3d6
    
    2.0.8+1mali (/var/lib/dpkg/status)
     Description Language:
                     File: /var/lib/dpkg/status
                      MD5: 7085696df1cfaa119cbfcae5fa57d437
    
    
    Reverse Depends:
      libsdl2-doc,libsdl2-dev 2.0.4+dfsg-1
      libsdl2-doc,libsdl2-dev 2.0.4+dfsg-1
      libsdl2-doc,libsdl2-dev 2.0.4+dfsg-1
      libsndifsdl2-dev,libsdl2-dev
      libsdl2-ttf-dev,libsdl2-dev 2.0.0
      libsdl2-net-dev,libsdl2-dev 2.0.0
      libsdl2-mixer-dev,libsdl2-dev 2.0.7
      libsdl2-image-dev,libsdl2-dev 2.0.8
      libsdl2-gfx-dev,libsdl2-dev
      libsdl2-doc,libsdl2-dev 2.0.4+dfsg-1
      games-c++-dev,libsdl2-dev
      libpjproject-dev,libsdl2-dev
    Dependencies:
    2.0.8+dfsg1-1ubuntu1.18.04.3 - libasound2-dev (0 (null)) libdbus-1-dev (0 (null)) libegl1-mesa-dev (0 (null)) libgl1-mesa-dev (0 (null)) libgles2-mesa-dev (0 (null)) libglu1-mesa-dev (0 (null)) libibus-1.0-dev (0 (null)) libmirclient-dev (0 (null)) libpulse-dev (0 (null)) libsdl2-2.0-0 (5 2.0.8+dfsg1-1ubuntu1.18.04.3) libsndio-dev (0 (null)) libudev-dev (0 (null)) libwayland-dev (0 (null)) libx11-dev (0 (null)) libxcursor-dev (0 (null)) libxext-dev (0 (null)) libxi-dev (0 (null)) libxinerama-dev (0 (null)) libxkbcommon-dev (0 (null)) libxrandr-dev (0 (null)) libxss-dev (0 (null)) libxt-dev (0 (null)) libxv-dev (0 (null)) libxxf86vm-dev (0 (null)) libsdl-1.3-dev (0 (null)) libsdl-1.3-dev (0 (null))
    2.0.8+dfsg1-1ubuntu1 - libasound2-dev (0 (null)) libdbus-1-dev (0 (null)) libegl1-mesa-dev (0 (null)) libgl1-mesa-dev (0 (null)) libgles2-mesa-dev (0 (null)) libglu1-mesa-dev (0 (null)) libibus-1.0-dev (0 (null)) libmirclient-dev (0 (null)) libpulse-dev (0 (null)) libsdl2-2.0-0 (5 2.0.8+dfsg1-1ubuntu1) libsndio-dev (0 (null)) libudev-dev (0 (null)) libwayland-dev (0 (null)) libx11-dev (0 (null)) libxcursor-dev (0 (null)) libxext-dev (0 (null)) libxi-dev (0 (null)) libxinerama-dev (0 (null)) libxkbcommon-dev (0 (null)) libxrandr-dev (0 (null)) libxss-dev (0 (null)) libxt-dev (0 (null)) libxv-dev (0 (null)) libxxf86vm-dev (0 (null)) libsdl-1.3-dev (0 (null)) libsdl-1.3-dev (0 (null))
    2.0.8+1mali - libsdl2-2.0-0 (5 2.0.8+1mali) libc6-dev (0 (null)) libgl1-mesa-dev (0 (null)) libx11-dev (0 (null)) libsdl-1.3-dev (0 (null)) libsdl-1.3-dev (0 (null))
    Provides:
    2.0.8+dfsg1-1ubuntu1.18.04.3 -
    2.0.8+dfsg1-1ubuntu1 -
    2.0.8+1mali -
    Reverse Provides:
    
    md5sum /usr/lib/arm-linux-gnueabihf/libSDL2.so
    
    e7281fb0880830ddc64fec99505ce4ca  /usr/lib/arm-linux-gnueabihf/libSDL2.so
    

    I grabbed this from a forum where said it was suggested to grab. That is what I have inside the system. I don’t know what could be triggering that errors.


  • Global Moderator

    @ray3d said in Odroid XU4 SDL Problem Emulationstation:

    In the odroid how do you update to latest retropie without harm the actual content?

    You just update the RetroPie script and/or the Retropie packages, without updating the OS.
    Sorry I can't be of more of assistance, I don't have an XU4 to test.
    The command I mentioned before would reinstall the RetroPie SDL library for your, just in case the system upgrade has overwritten.
    Which version is currently installed ? You can find out using:

    dpkg -l | grep -i libsdl
    


  • Ok I give the command and these were the results:

     dpkg -l | grep -i 
    
    ii  libsdl-gfx1.2-5:armhf                  2.0.25-9                              armhf        drawing and graphical effects extension for SDL
    ii  libsdl-gfx1.2-dev:armhf                2.0.25-9                              armhf        development files for SDL_gfx
    ii  libsdl-image1.2:armhf                  1.2.12-8                              armhf        Image loading library for Simple DirectMedia Layer 1.2, libraries
    ii  libsdl-image1.2-dev:armhf              1.2.12-8                              armhf        Image loading library for Simple DirectMedia Layer 1.2, development files
    ii  libsdl-mixer1.2:armhf                  1.2.12-14                             armhf        Mixer library for Simple DirectMedia Layer 1.2, libraries
    ii  libsdl-mixer1.2-dev:armhf              1.2.12-14                             armhf        Mixer library for Simple DirectMedia Layer 1.2, development files
    ii  libsdl-net1.2:armhf                    1.2.8-5                               armhf        Network library for Simple DirectMedia Layer 1.2, libraries
    ii  libsdl-net1.2-dev:armhf                1.2.8-5                               armhf        Network library for Simple DirectMedia Layer 1.2, development files
    ii  libsdl-sound1.2:armhf                  1.0.3-8                               armhf        Sound library for Simple DirectMedia Layer 1.2, libraries
    ii  libsdl-sound1.2-dev:armhf              1.0.3-8                               armhf        Sound library for Simple DirectMedia Layer 1.2, development files
    ii  libsdl-ttf2.0-0:armhf                  2.0.11-4                              armhf        TrueType Font library for Simple DirectMedia Layer 1.2, libraries
    ii  libsdl-ttf2.0-dev:armhf                2.0.11-4                              armhf        TrueType Font library for Simple DirectMedia Layer 1.2, development files
    ii  libsdl1.2-dev                          1.2.15+dfsg2-0.1                      armhf        Simple DirectMedia Layer development files
    ii  libsdl1.2debian:armhf                  1.2.15+dfsg2-0.1                      armhf        Simple DirectMedia Layer
    ii  libsdl2-2.0-0:armhf                    2.0.8+1mali                           armhf        Simple DirectMedia Layer
    hi  libsdl2-dev:armhf                      2.0.8+1mali                           armhf        Simple DirectMedia Layer development files
    ii  libsdl2-image-2.0-0:armhf              2.0.3+dfsg1-1                         armhf        Image loading library for Simple DirectMedia Layer 2, libraries
    ii  libsdl2-image-dev:armhf                2.0.3+dfsg1-1                         armhf        Image loading library for Simple DirectMedia Layer 2, development files
    ii  libsdl2-mixer-2.0-0:armhf              2.0.2+dfsg1-2                         armhf        Mixer library for Simple DirectMedia Layer 2, libraries
    ii  libsdl2-mixer-dev:armhf                2.0.2+dfsg1-2                         armhf        Mixer library for Simple DirectMedia Layer 2, development files
    ii  libsdl2-net-2.0-0:armhf                2.0.1+dfsg1-3                         armhf        Network library for Simple DirectMedia Layer 2, libraries
    ii  libsdl2-net-dev:armhf                  2.0.1+dfsg1-3                         armhf        Network library for Simple DirectMedia Layer 2, development files
    ii  libsdl2-ttf-2.0-0:armhf                2.0.14+dfsg1-2                        armhf        TrueType Font library for Simple DirectMedia Layer 2, libraries
    ii  libsdl2-ttf-dev:armhf                  2.0.14+dfsg1-2                        armhf        TrueType Font library for Simple DirectMedia Layer 2, development files
    

    I heard that raspberry pi has an experimental driver open gl and altering config.txt fix the issue, In odroid exist something similar?


  • Global Moderator

    @ray3d You seem to have the correct SDL library installed (2.0.8+1mali is installed by the RetroPie script).
    The advice about the OpenGL experimental driver on the PI doesn't apply to Odroid.



  • Yes it seems correct. I will try to look for more but Is very strange. Everything is there.


  • Global Moderator

    @ray3d Are you running Emulationstation from the terminal or from the desktop environment ?

    Try running it like this from the terminal

    SDL_VIDEO_EGL_DRIVER=/usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv2.so emulationstation --debug
    

    and see if you get a different result.



  • I’m running now all the tests via SSH: I gave your command and these are the results:

    SDL_VIDEO_EGL_DRIVER=/usr/lib/arm-linux-gnueabihf/mali-egl/libGLESv2.so emulationstation --debug
    
    lvl2:   EmulationStation - v2.7.6rp, built Mar 31 2019 - 02:33:22
    lvl2:   Creating surface...
    lvl2:   Created window successfully.
    terminate called after throwing an instance of 'std::logic_error'
      what():  basic_string::_M_construct null not valid
    Aborted
    pigame@odroid:~$
    

    What means that?


  • Global Moderator

    @ray3d Looks to be working, you're using an older version of Emulationstation and there's something wrong with your installation.

    Did you install from the RetroPie-Setup script or from a 3rd party image ? Did you update your RetroPie-Setup script - what version are you using ?



  • I had from last year the image and I constructed carefully but I didn’t remember present these problems but now I’m a fool because I didn’t make the backup of some things :( Look this is the file: “retropie_packages.sh” and it says _version="1.65 FINAL". What I did is go to:

    sudo ~/RetroPie-Setup/retropie_setup.sh
    

    Then update retro pie script and that’s all because I don’t know how to update more. Well what I did also went to manage then core and update all from source that are the two things I did nothing else. How can I update maybe with commands and not the GUI? But I don’t know how.


  • Global Moderator

    @ray3d Can you show a screenshot after the start of the setup script - the version should be shown there. The retropie_packages.sh script is not showing the version.



  • This is the picture of what I see:

    https://ibb.co/jbNKsX0


  • Global Moderator

    @ray3d This is not the RetroPie-Setup script distributed by the RetroPie project - it's probably a 3rd party image (ORA maybe ?). We don't support those images, you should probably ask the creator(s) for support.



  • I installed everything as it says here with the latest version:

    https://retropie.org.uk/docs/Odroid-XU3-XU4/

    I deleted from the retropie setup directory:

    Now I see:

    https://ibb.co/F4ksdhn

    But same error emulationstation. or line for same error. When I installed the new retropie it took almost 3 hours it was a lot of time but did nothing. Same SDL error :(



Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.