bobbydilley / lindbergh-loader

A SEGA Lindbergh Emulator for Linux.
50 stars 6 forks source link

How did you manage to make it work on Ubuntu 22.04? #11

Closed Caviar-X closed 10 months ago

Caviar-X commented 10 months ago

Same version. I may complie it in a wrong way(I did it with maybe full i386 pack,use some --broken-fix to get rid of some dirty work).

After make,I cp the files into the elf directory,but it reports "unable to find lindbergh.so",but I can use find to find it and the file did show up on ls.

So I went on searching and found this.

https://bugs.launchpad.net/qemu/+bug/1805913

this happens if your glibc version is greater than 2.28(mine is 2.35)

My question is that did I use the wrong way to complie or It's just about glibc version?

Caviar-X commented 10 months ago

after add

    if (!lindberghSharedObjectFound)
    {
        printf("Error: The preload object lindbergh.so was not found in this directory.\n");
        printf("Errno=%d: %s\n",errno,strerror(errno));
        return EXIT_FAILURE;
    }

It does behavior

Errno=75: Value too large for defined data type
bobbydilley commented 10 months ago

Can you run it like this:

LD_PRELOAD=lindbergh.so LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./hod4M.elf

And then copy the exact error?

Caviar-X commented 10 months ago

Can you run it like this:

LD_PRELOAD=lindbergh.so LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./hod4M.elf

And then copy the exact error?

It reports that segaapi.so doesn't exist(I can still see it showing up on ls in the same directory)

I guess it's the same reason.

bobbydilley commented 10 months ago

And then copy the exact error?

I can't help if you don't do this, I need more information such as what you actually typed.

Caviar-X commented 10 months ago
cxmeow@DESKTOP-1KOHPUQ:/mnt/f/games/teknoparrot/ISO/hotd4/disk0/elf$ LD_PRELOAD=lindbergh.so LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./hod4M.elf
SEGA Lindbergh Loader
Robert Dilley 2023
Not for public consumption

Warning: Cannot open lindbergh.conf, using default values.
Now starting "The House of the Dead 4 Rev C", this game is working.
Warning: Skipping SEGFAULT 3A
The resolution is 640x480
MyApp::Initialize()
00000000/too small heap area @ 0
00000000/Buffer::Create Texture

00000000/Buffer::Create Texture

00000000/bufferini 640, 480 : 640, 480
00000000/assigned: FSYS as IZFS_DEVICE_HOST.
00000000/assigned: DATA as IZFS_DEVICE_HOST.
00000000/assigned: AFS as IZFS_DEVICE_HOST.
00000000/assigned: SHADER as IZFS_DEVICE_HOST.
00000000/assigned: BGM as IZFS_DEVICE_HOST.
00000000/STDSHADER SIZE 67584
00000000/STDSHADER SIZE 65536
ALSA lib confmisc.c:855:(parse_card) cannot find card '0'
ALSA lib conf.c:5178:(_snd_config_evaluate) function snd_func_card_inum returned error: No such file or directory
ALSA lib confmisc.c:422:(snd_func_concat) error evaluating strings
ALSA lib conf.c:5178:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib confmisc.c:1334:(snd_func_refer) error evaluating name
ALSA lib conf.c:5178:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5701:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2664:(snd_pcm_open_noupdate) Unknown PCM default
AL lib: (EE) ALCplaybackAlsa_open: Could not open playback device 'default': No such file or directory
modecontrol: ReqFreeAllDataBank
00000000/=== [0](0:00:00) ===
AppGarbageCollectionOnce:[-134905856(-539623424KB)][-134905856][1us][1]
00000000/SHADER_SIZE GetBrightArea.dat0:0x800  GetBrightArea.dat1:0x800
00000000/SHADER_SIZE GaussH.dat0:0x800  GaussH.dat1:0x800
00000000/SHADER_SIZE GaussV.dat0:0x800  GaussV.dat1:0x800
00000000/SHADER_SIZE GlareCompose.dat0:0x800  GlareCompose.dat1:0x800
00000000/SHADER_SIZE Monochrome.dat0:0x800  Monochrome.dat1:0x800
00000000/SHADER_SIZE Sepia.dat0:0x800  Sepia.dat1:0x800
00000000/SHADER_SIZE Solarization.dat0:0x800  Solarization.dat1:0x800
00000000/SHADER_SIZE GaussH.dat0:0x800  GaussH.dat1:0x800
00000000/SHADER_SIZE GaussV.dat0:0x800  GaussV.dat1:0x800
00000000/SHADER_SIZE DoF.dat0:0x800  DoF.dat1:0x800
00000000/SHADER_SIZE Laplacian.dat0:0x800  Laplacian.dat1:0x800
00000000/SHADER_SIZE Posterization.dat0:0x800  Posterization.dat1:0x800
entry : AAA_COMMONTEX_0system
00000000/CommonTexRead[0201] 0 0

entry : credit
entry : primitive
entry : se_coin
entry : se_common
entry : AAB_common_vr
entry : common
entry : commonspr
entry : zn00a
entry : zn01a
entry : znall
entry : zp01a
entry : zp01a_morph
entry : zp02a
entry : zp02a_morph
entry : zpall
entry : zsall
entry : ztall
modecontrol: ReqFreeAllDataBank
00000000/=== [9](0:00:16) ===
AppGarbageCollectionOnce:[-134905856(-539623424KB)][-134905856][0us][1]
ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
entry : logo
free : logo
modecontrol: ReqFreeAllDataBank
00000000/=== [10](0:00:27) ===
AppGarbageCollectionOnce:[-134905856(-539623424KB)][-134905856][0us][1]
ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
entry : logo
free : logo
modecontrol: ReqFreeAllDataBank
00000000/=== [1](0:00:32) ===
AppGarbageCollectionOnce:[-134905856(-539623424KB)][-134905856][0us][1]
00000000/SHADER_SIZE YUVCompose.dat0:0x800  YUVCompose.dat1:0x800
entry : logo
entry : AAA_COMMONTEX_stage01_all
00000000/CommonTexRead[0201] 1 1

entry : advertise
AppGarbageCollectionOnce:[-134905856(-539623424KB)][-134905856][0us][1]
cxmeow@DESKTOP-1KOHPUQ:/mnt/f/games/teknoparrot/ISO/hotd4/disk0/elf$ ls
LucidaConsole_12.abc  game                 hod4Mn.elf      hod4Ms.elf      hod4testM.elf      libkswapapi.so       libsegaapi-1.01.0001  lindbergh.so  sram.bin
LucidaConsole_12.tga  hod4M.elf            hod4Mn_HD.elf   hod4Ms_HD.elf   hod4testM_HD.elf   libposixtime.so      libsegaapi.so         logo.tga      steam_appid.txt
eeprom.bin            hod4M_offscreen.elf  hod4Mn_VGA.elf  hod4Ms_VGA.elf  hod4testM_VGA.elf  libposixtime.so.2.4  lindbergh             p1.png        teknoparrot.ini
cxmeow@DESKTOP-1KOHPUQ:/mnt/f/games/teknoparrot/ISO/hotd4/disk0/elf$
dkeruza-neo commented 10 months ago

@Caviar-X You need to install the proper audio library, that is why you get the "Alsalib" errors.

Caviar-X commented 10 months ago

@Caviar-X You need to install the proper audio library, that is why you get the "Alsalib" errors.

I think the main reason is ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored instead of ALSA error you said below.

I'll reset the environment and try to manually install everything which requires 32bit and see if it will solve the problem

dkeruza-neo commented 10 months ago

@Caviar-X You need to install the proper audio library, that is why you get the "Alsalib" errors.

Well,I think you should pay more attention to ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored

I'll reset the environment and try to manually install everything which requires 32bit and see if it will solve the problem

First, try not to be so rude. I am trying to help you. That error you see is misleading, it's only a warning. If you Google the error message you will see what I mean. Your issue is related to the audio driver or an alsa extension.

Caviar-X commented 10 months ago

@Caviar-X You need to install the proper audio library, that is why you get the "Alsalib" errors.

Well,I think you should pay more attention to ERROR: ld.so: object 'lindbergh.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored I'll reset the environment and try to manually install everything which requires 32bit and see if it will solve the problem

First, try not to be so rude. I am trying to help you. That error you see is misleading, it's only a warning. If you Google the error message you will see what I mean. Your issue is related to the audio driver or an alsa extension.

Sorry ,I didn't mean that. Looks like you're right.I reset and reinstall everything and It works well without audio/

Caviar-X commented 10 months ago

It works. idk what I've messed up in my first installation,Sorry for disturbing.

Caviar-X commented 10 months ago

Thank you all

dkeruza-neo commented 10 months ago

Good to know!