mmitch / gbsplay

gameboy sound player
https://mmitch.github.io/gbsplay/
Other
98 stars 20 forks source link

Unable to install gbsplay on Windows #102

Open bubblyfluff opened 12 months ago

bubblyfluff commented 12 months ago

Hi! I'm trying to install gbsplay on Windows 10. After figuring out that I needed GNU make, I downloaded it using Chocolatey. But when I tried to run the "make" command as the INSTALL file says, there were a bunch of errors. I changed the directory in PowerShell to the gbsplay folder as I assume you're supposed to do...

Am I doing something wrong? :(

gbsplayinstallfail

mmitch commented 12 months ago

Disclaimer: I only do Linux, I am no expert on the Windows side of things.

We support different build variants on Windows, but we always need a Posix compatible shell (sh, bash, etc.) to run the configure script (and the Makefile contains shell code as well). Thus you can't simply run make inside Powershell. Also you will need a C compiler, binutils and other basic Unix shell tools as well.

As gbsplay originated on Linux, this is not explicitely stated in the INSTALL file because that was the default environment when the INSTALL file was written.
We might want to update that.

If you want to build under Windows, you have the following options:

I don't know how to install or configure either of these, but we have them included in our CI pipeline so we have regular builds using the GitHub infrastructure. See the configuration at https://github.com/mmitch/gbsplay/blob/master/.github/workflows/build_windows.yml – the packages: lines tell you which additional packages we need to install to make the build work.
All builds are based on the respective images provided by GitHub, so I don't know what is needed to install them on a real Windows system and which base packages will be already included that have to be manually installed by you.

So it is possible, but not properly documented.

mmitch commented 11 months ago

And since today we also run a Cygwin build in our CI pipeline, so you can have a look at that, too, in build_windows.yml

mmitch commented 11 months ago

I have completely rewritten the installation instructions, please have a look at the new INSTALL.md.

bubblyfluff commented 11 months ago

Thank you for replying!! Yeah, after making this post I realized that I probably should've known this program was for Linux only. I actually have a C compiler installed. But, from what you're telling me, I think I need more than just that!

I'm not very tech savvy, and I barely know anything about Linux. So I don't think I'd be able to go through all the technical stuff required to make this build on Windows... Sorry that I can't be of much help. But thank you for acknowledging my post and rewriting the INSTALL instructions ^^

mmitch commented 10 months ago

gbsplay is not for Linux only – it also runs on Windows, FreeBSD and MacOS. But I think the problem is that we don't offer precompiled binaries for any platform – it's always "compile your own". While some third parties provide pre-compiled binaries (many Linux distributions or FreeBSD ports), I don't know of any targeting Windows.

As I don't use Windows, I can't help you with a CygWin or MSYS setup. And after installing them you'd still need to "compile your own" (which can be as simple as typing make), but figuring out how to install a compiler and libraries and whatnot will be the hard part.

So another idea: Current Windows (10 and up) should have WSL and WSL2 available (Windows Subsystem for Linux). If you activate that feature, you'll get a Linux co-installed to your Windows, simply running in a terminal. I think the default installation uses Ubuntu Linux which has a (slightly older) gbsplay package available. Something along the lines of sudo apt install gbsplay should be sufficient to install gbsplay under Ubuntu/WSL. You might want to give that a try.