Guide to successfully compile PPSSPP

Home Forums RetroPie Project Everything else related to the RetroPie Project Guide to successfully compile PPSSPP

RetroPie has a new website and forum. Please visit https://retropie.org.uk/ for the new site. The new forum is located at https://retropie.org.uk/forum/. This forum is left here as a read-only archive.

This topic contains 5 replies, has 5 voices, and was last updated by  whise 2 years, 10 months ago.

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #4677
    Profile photo of whise
    whise
    Participant

    First let me just say that i couldn’t yet run any games. But maybe someone here can get past the problem I have after compiling: “unable to create opengl screen: couldn’t find matching glx visual”

    I did however manage to compile it, after alot of google.

    1# Install dependencies from apt

    sudo apt-get install git-core
    sudo apt-get install cmake
    sudo apt-get install libsdl1.2-dev
    sudo apt-get install libgles2-mesa-dev
    sudo apt-get install linux-headers-rpi

    2# Install glew from deb (download https://www.mediafire.com/#f00bl61b5aezn)
    dpkg -i glew_1.7.0-1_armhf.deb

    3# Clone the git (download source)
    git clone /home/pi/RetroPie/emulators/ppsspp git://github.com/hrydgard/ppsspp.git
    git submodule update –init

    4# Run cmake
    cmake .

    5# Edit CMakeCache.txt
    Change “ARM:BOOL=OFF” to “ARM:BOOL=ON”
    Change “X86:BOOL=ON” to “X86:BOOL=OFF”
    Change “CMAKE_BUILD_TYPE:STRING=” to “CMAKE_BUILD_TYPE:STRING=Release”

    6# Edit CMakeLists.txt
    Change:
    if(ARM OR SIMULATOR)
    set(USING_GLES2 ON)
    to:
    if(ARM OR SIMULATOR)
    set(USING_GLES2 OFF)

    7# Run cmake again

    cmake .

    8# Install ffmpeg from source (XXX corresponds your version, remember to change it…)

    apt-get source ffmpeg-dmo

    cd ffmpeg-dmo-XXX
    ./configure
    make

    9# After compiling create a folder called lib inside the ffmpeg-dmo-XXX folder.
    copy all the *.a files that are recursively inside the ffmpeg-dmo-XXX folder to that lib folder you just created.
    Change the text in the following files (ppsspp/CMakefiles/PPSSPP.dir/): DependInfo.cmake , flags.make , link.txt
    Change “ffmpeg/linux/x86/include” to “ffmpeg-dmo-XXX”
    Change “ffmpeg/linux/x86/lib” to “ffmpeg-dmo-XXX/lib”

    10# Add -lbz2 to the end of link.txt

    11 # Finally compile it using make

    POSSIBLE ERRORS:

    any errors complaying about:
    error: ‘offsetof’ was not declared in this scope
    error: ‘pc’ was not declared in this scope

    just add the following lines to the file the produces the error:

    #include <stddef.h>
    #include <cstddef>

    Compiler Fails at 100% with no apparent error
    change your ram settings and give for mem for the cpu

    #5553
    Profile photo of Cael
    Cael
    Participant

    i tried this and for me the compiler barfs on somtheing reladed to edsdl

    #5570
    Profile photo of karloss
    karloss
    Participant

    I don’t think the PPSSPP emulator can play any games on the pi yet anyway, not worth trying to compile…

    #5736
    Profile photo of gizmo98
    gizmo98
    Participant

    Hi whise,

    I did not run ppsspp till now. Retropie already has an ppsspp installation option. There are some minor differences between your solution and the retropie_setup script.

    # install PSP emulator PPSSPP
    function em_install_ppsspp()
    {
        printMsg "Installing PPSSPP emulator"    
        if [[ -d "$rootdir/emulators/ppsspp" ]]; then
            rm -rf "$rootdir/emulators/ppsspp"
        fi        
        gitPullOrClone "$rootdir/emulators/ppsspp" git://github.com/hrydgard/ppsspp.git
        git submodule update --init    
        # generate default Makefile
        cmake . 
        sed -i -e "s/ARM:BOOL=OFF/ARM:BOOL=ON/g" CMakeCache.txt
        sed -i -e "s/X86:BOOL=ON/X86:BOOL=OFF/g" CMakeCache.txt
        sed -i -e "s/CMAKE_BUILD_TYPE:STRING=/CMAKE_BUILD_TYPE:STRING=Release/g" CMakeCache.txt
        # enabled arm, disabled x86, built with release flags.
        cmake .
        make    
        mkdir -p "$rootdir/emulators/ppsspp/assets/lang"
        cp $rootdir/emulators/ppsspp/lang/* $rootdir/emulators/ppsspp/assets/lang/
        if [[ ! -f "$rootdir/emulators/ppsspp/PPSSPPSDL" ]]; then
            __ERRMSGS="$__ERRMSGS Could not successfully compile PPSSPP."
        fi      
        popd
    }
    #5774
    Profile photo of petrockblog
    petrockblog
    Keymaster

    Yes, PPSSPP is part of the RetroPie Script. However, it does not compile and/or (can’t remember) successfully.

    If the recipe from above works well, it would be great if someone could post a pull request to add it to the RetroPie-Setup Script.

    #8026

    Sacha

    Hey, your device is GLES2, so you’ll definitely want USING_GLES2 to be turned on. It will attempt to use Desktop OpenGL otherwise.

    Also, you may want to compile the ffmpeg from source (supplied) or otherwise it may be missing codecs. Try the linux arm build script.

Viewing 6 posts - 1 through 6 (of 6 total)

Forums are currently read only - please visit the new RetroPie forums at https://retropie.org.uk/forums/

Skip to toolbar