kanjitalk755 / macemu

Basilisk II and SheepShaver Macintosh emulators
332 stars 50 forks source link

SheepShaver build asks for X11 but builded with SDL2 #195

Closed nexusle closed 3 months ago

nexusle commented 3 months ago

Hey,

I'd builded SheepShaver on Raspi5 and get these error after build at start of SheepShaver:

SheepShaver V2.5 by Christian Bauer and Mar"c" Hellwig
ERROR: Could not initialize SDL: x11 not available.

SheepShaver: xpram_unix.cpp:56: void SaveXPRAM(): Assertion `!xpram_name.empty()' failed.
Abgebrochen

in ./configure I enabled SDL for video and audio. Summary seems ok to me:

SheepShaver configuration summary:

SDL support ...................... : video audio
SDL major-version ................ : 2
BINCUE support ................... : no
LIBVHD support ................... : no
FBDev DGA support ................ : no
XFree86 DGA support .............. : no
XFree86 VidMode support .......... : no
Using PowerPC emulator ........... : yes
Enable JIT compiler .............. : yes
Enable video on SEGV signals ..... : no
ESD sound support ................ : no
GTK user interface ............... : no
mon debugger support ............. : no
Addressing mode .................. : real
Bad memory access recovery type .. : siginfo

To verify this, I build SheepShaver also on x86 and get the same error. Please can someone check this? An old build (4 weeks) on Raspberry Pi 4 didn't have this error.

Are there any changes, that now X11 must running??

kanjitalk755 commented 3 months ago

"x11 not available" is an error message returned by SDL. Have you not updated your SDL since 4 weeks ago?

BTW, you can check for updates to the repository with the command below.

git log -p --after '4 weeks'
nexusle commented 3 months ago

Strange. BasiliskII works without this error message. Build just before SheepShaver. I didn‘t know whats different between BasiliskII and SheepShaver for SDL2.

I’d fresh installed the Pi5 these days and today, for testing, a x86 Debian distro (without X11). So SDL should be the newest version available over APT.

nexusle commented 3 months ago

Isn‘t BasiliskII built with the same (SDL) source code files as SheepShaver? If so, why BII works and SheepShaver not?

kanjitalk755 commented 3 months ago

If you build in the same environment, the same SDL library should be linked. Also, both BasiliskII and SheepShaver pass the same flag to SDL_Init(), which returns an error. I don't know how to fix it because I don't know how to reproduce it.

nexusle commented 3 months ago

Maybe you can setup a little VM and install Debian NetISO. Deselect all from software installation page and you have a system without X11 :)

kanjitalk755 commented 3 months ago

After a fresh installation of Debian, I ran the following command to install libsdl2-dev.

sudo apt install libsdl2-dev

Then, libx11-dev etc. will also be installed.

How did you install SDL2 without X11?

nexusle commented 3 months ago

The same way. I didn‘t said, that I installed SDL without x11. The system had no Xorg and shouldn‘t have it. Goal is, that the system is directly booting in SheepShaver. But SheepShaver seems to need Xorg installed at the moment, BasiliskII strangely not.