Code Monkey home page Code Monkey logo

Comments (13)

joolswills avatar joolswills commented on June 29, 2024

thanks - still seems to be problematic though - if a system already has SDL2 installed it should just use that. possibly option is to check for an sdl2-config and if it exists on the system then don't try and download/build SDL2 (but still link against it)? Cheers.

from mupen64plus.

ricrpi avatar ricrpi commented on June 29, 2024

Thanks for spotting the script error.

The problem I have is the emulator runs best in the console. If SDL2 is built with X11 support then it won't run at all in the console which is annoying.

Unfortunately sdl2-config does not provide the 'capabilities' defined from the ./configure step therefore I felt it better, for novice users, to just rebuild SDL2 if the script cannot read the config.log file to ensure all users can run in desktop and console.

It would be a good side project to modify SDL to use X11 if it is running and default to console if it is not.

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

I guess the app needs adjusting ? I'm sure I have had SDL code before that works in both depending. (maybe it was sdl1.x)

The problem with building your SDL without X11 support and installing on the system is it breaks some other stuff (part of the RetroPie project) that I have that requires SDL with X11 (Some code that references a structure member that only exists when SDL is built with X support).

Maybe possible to adjust the emulator to statically link against it's own SDL2?

from mupen64plus.

ricrpi avatar ricrpi commented on June 29, 2024

ok, I didn't know that RetroPie requires X11 support. Statically linking is probably the best way forward then.

I'm having a few problems with the main script for developer building but will look at SDL2 soon

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

it doesn't but one of the emulators seems to require it (as well as working from framebuffer). of course that could be fixed/changed also, but I thought to mention it.

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

I made a mistake btw - it wasn't your SDL2 library that was causing the problem with another emulator build but a 3rd party sdl1 library (dispmanx). I have now corrected this issue by building the dispmanx sdl with X11 support. retropie still builds sdl2 with x11 support though, so it still would be good to not overwrite that if possible in case anyone does actually want to use any X11 SDL2 applications. Apologies if I caused any confusion.

from mupen64plus.

ricrpi avatar ricrpi commented on June 29, 2024

After further testing I dont think SDL2 supports X11+GLES at the moment, wish I had more time to investigate further...

I will try statically linking SDL into the core at some point.

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

we include SDL2 as packaged debs on retropie now which install to /usr/bin - we don't really want another SDL2 installed in /usr/local/ - regarding the issue you had with it working from console if built with X - I've not seen this behaviour so I'll test, but I know that it is required to build without opengl (as you do currently), else if someone has raspbian sdl1 installed it will have pulled in opengl headers etc, and so SDL2 will try and build with opengl.

Please could you add an option to your build script to skip the SDL2 stuff completely, so it will just use our pre-installed SDL2.

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

sorry - I had a brain glitch during part of that - your script doesn't actually install SDL2 right ? just builds it within the build location and links with it ? - we previously had SDL2 installed in /usr/local/ and your script I believe checks for that, but we now use /usr since we are using a debian package of sdl2

from mupen64plus.

ricrpi avatar ricrpi commented on June 29, 2024

I wasn't aware that SDL2 is now in the raspian package repository. I can see it in Jessie now, is it in wheezy too?

I would rather use raspbian package to save people having the 1h compile time but I would like to test before changing the script.

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

it's not - we build it from source - see https://github.com/petrockblog/RetroPie-Setup/blob/master/scriptmodules/supplementary/sdl2.sh

from mupen64plus.

ricrpi avatar ricrpi commented on June 29, 2024

I have added to the script to check the users PATH for sdl2-config. Retro-Pie can disable the SDL stuff use CHECK_SDL2=0 ./build.sh but it should work with checking.

The SDL2 package in Jessie doesn't have SDL_VIDEO_DRIVER_RPI enabled so is not very helpful at the moment.

from mupen64plus.

joolswills avatar joolswills commented on June 29, 2024

yeh - I'm hoping raspbian devs will fix up the sdl2 package in jessie for pi - as it would be nice to move away at some point from having to maintain/build it.

Many thanks for the script changes - I will give it a test. Cheers.

from mupen64plus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.