Skip to content

Instantly share code, notes, and snippets.

@2E0PGS
Last active September 10, 2022 21:26
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save 2E0PGS/b0269a68e3abe7571ab51f474d8bd989 to your computer and use it in GitHub Desktop.
Save 2E0PGS/b0269a68e3abe7571ab51f474d8bd989 to your computer and use it in GitHub Desktop.
How to get ePSXe x64 binary to work on Linux

If you get this error when executing the binary via terminal:

./epsxe_x64: error while loading shared libraries: libSDL_ttf-2.0.so.0: cannot open shared object file: No such file or directory

Fix:

  • sudo apt-get install libsdl-ttf2.0-0

Tested and works on Ubuntu 16.04.2 LTS.

Other deps were already met if not you may need to grab them too:

  • sudo apt-get install libsdl-image1.2
  • sudo apt-get install libgtk2.0-0
@bitboy85
Copy link

On Linuxmint 19.2 you also need to install the package libcurl3

./epsxe_x64: /usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by ./epsxe_x64)

Copy link

ghost commented Mar 7, 2020

For ubuntu 18.04 (as of this date) you need both:
libcurl3 & libsdl-ttf2.0-0

@obayit
Copy link

obayit commented Oct 24, 2020

How to install in Ubuntu 20.04?
libcur3 is replaced by libcurl4, and v3 can't be installed!

I had to uninstall libcur4, which removed transmission-gtk, feh, and uget. Because all these depend on it!

@PQCraft
Copy link

PQCraft commented Oct 29, 2020

How to install in Ubuntu 20.04?
libcur3 is replaced by libcurl4, and v3 can't be installed!

I had to uninstall libcur4, which removed transmission-gtk, feh, and uget. Because all these depend on it!

I'm having the same problem

@lfom
Copy link

lfom commented Mar 17, 2021

I got it working on Pop!_OS 20.10 (like Ubuntu 20.10), probably the same procedure works on 20.04 as well:

  1. Install libsdl2-ttf-2.0-0
  2. Create a folder named lib in the same directory as epsxe_x64 for the custom library files
  3. Download legacy libraries libcurl3 and libssl1.0.0 but do NOT install (a good place to download are the official repo links found in pkgs.org, I have used the versions for 18.04)
  4. Extract the files and copy the contents from x86_64-linux-gnu to the lib folder created previously
  5. You need to create a link to libSDL_ttf since the app expects a different name, so cd into the created lib folder and do something like this (adjust the original path to your distro if needed):
    ln -s /usr/lib/x86_64-linux-gnu/libSDL2_ttf-2.0.so.0.14.1 libSDL_ttf-2.0.so.0

The lib directory should look like this in the end (openssl-1.0.0 is a directory with the engines):

libcrypto.so.1.0.0
libcurl.so.4 -> libcurl.so.4.5.0
libcurl.so.4.5.0
libSDL_ttf-2.0.so.0 -> /usr/lib/x86_64-linux-gnu/libSDL2_ttf-2.0.so.0.14.1
libssl.so.1.0.0
openssl-1.0.0

Now you can run it with: LD_LIBRARY_PATH=./lib ./epsxe_x64

References:
https://superuser.com/questions/192573/how-do-you-specify-the-location-of-libraries-to-a-binary-linux
https://forum.star-conflict.com/index.php?/topic/24066-how-to-fix-the-curl_openssl_3-issue/

JFYI: I have installed epsxe because someone else said it would not need a console BIOS, but it is not true. PCSXR is available in the official repos and seems to work just fine, and it actually can simulate a PSX BIOS.

@rujiel
Copy link

rujiel commented Sep 10, 2022

Thank you for that summary lfom. I was wondering what file am I looking for inside of the libcurl3 deb archive, that I should copy into the lib folder I created? is it the /usr/share/lintian/overrides/libcurl3? Or is it the /usr/lib/x86-64-linux-gnu/..... etc file

@lfom
Copy link

lfom commented Sep 10, 2022

Thank you for that summary lfom. I was wondering what file am I looking for inside of the libcurl3 deb archive, that I should copy into the lib folder I created? is it the /usr/share/lintian/overrides/libcurl3? Or is it the /usr/lib/x86-64-linux-gnu/..... etc file

It was a while ago, but #4 says:

Extract the files and copy the contents from x86_64-linux-gnu to the lib folder created previously

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment