z-erica / cosmopolitan-sdl2

BSD Zero Clause License
26 stars 0 forks source link

Error when running on macOS aarch64 #1

Open MartyLake opened 5 months ago

MartyLake commented 5 months ago

Hello, I tried running the example but I got errors.

Reproduction steps

# Install cosmocc
cd $TMPDIR
mkdir cosmocc
cd cosmocc
wget https://cosmo.zip/pub/cosmocc/cosmocc.zip
unzip cosmocc.zip

# compile cosmo sdl2
cd $TMPDIR
git clone https://github.com/z-erica/cosmopolitan-sdl2.git
cd cosmopolitan-sdl2
PATH=${TMPDIR}/cosmocc/bin:$PATH make

# run
cd o
./imgui_example.com

Expected

imgui example window appears

Actual

This error displays:

I2024-01-24T15:55:29.438469:sdl2/SDL_dynapi_cosmo.c:280:imgui_example:86744] could not load native SDL with filename libSDL2.so: dlopen(libSDL2.dylib, 0x0005): tried: 'libSDL2.dylib' (code signature invalid in <35C6CC5A-D0C5-30F4-99BE-B95F5F410B5D> '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (errno=1) sliceOffset=0x001A0000, codeBlobOffset=0x001614B0, codeBlobSize=0x000090B0), '/System/Volumes/Preboot/Cryptexes/OSlibSDL2.dylib' (no such file), '/usr/lib/libSDL2.dylib' (no such file, not in dyld cache), 'libSDL2.dylib' (code signature invalid in <35C6CC5A-D0C5-30F4-99BE-B95F5F410B5D> '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (errno=1) sliceOffset=0x001A0000, codeBlobOffset=0x001614B0, codeBlobSize=0x000090B0)
I2024-01-24T15:55:29+000622:sdl2/SDL_dynapi_cosmo.c:280:imgui_example:86744] could not load native SDL with filename libSDL2-2.0.so: dlopen(libSDL2-2.0.dylib, 0x0005): tried: 'libSDL2-2.0.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OSlibSDL2-2.0.dylib' (no such file), '/usr/lib/libSDL2-2.0.dylib' (no such file, not in dyld cache), 'libSDL2-2.0.dylib' (no such file)
I2024-01-24T15:55:29+000039:sdl2/SDL_dynapi_cosmo.c:280:imgui_example:86744] could not load native SDL with filename libSDL2-2.0.so.0: dlopen(libSDL2-2.0.so.0, 0x0005): tried: 'libSDL2-2.0.so.0' (no such file), '/System/Volumes/Preboot/Cryptexes/OSlibSDL2-2.0.so.0' (no such file), '/usr/lib/libSDL2-2.0.so.0' (no such file, not in dyld cache), 'libSDL2-2.0.so.0' (no such file)
I2024-01-24T15:55:29+000183:sdl2/SDL_dynapi_cosmo.c:280:imgui_example:86744] could not load native SDL with filename SDL2.dll: dlopen(SDL2.dll, 0x0005): tried: 'SDL2.dll' (not a mach-o file), '/System/Volumes/Preboot/Cryptexes/OSSDL2.dll' (no such file), '/usr/lib/SDL2.dll' (no such file, not in dyld cache), 'SDL2.dll' (not a mach-o file)
I2024-01-24T15:55:29+000006:sdl2/SDL_dynapi_cosmo.c:200:imgui_example:86744] extracting /zip/libSDL2.dylib to ./libSDL2.dylib
E2024-01-24T15:55:29+055372:sdl2/SDL_dynapi_cosmo.c:300:imgui_example:86744] could not load bundled libSDL2.dylib after extracting: dlopen(./libSDL2.dylib, 0x0005): tried: './libSDL2.dylib' (code signature invalid in <35C6CC5A-D0C5-30F4-99BE-B95F5F410B5D> '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (errno=1) sliceOffset=0x001A0000, codeBlobOffset=0x001614B0, codeBlobSize=0x000090B0), '/System/Volumes/Preboot/Cryptexes/OS./libSDL2.dylib' (no such file), '/usr/lib/./libSDL2.dylib' (no such file, not in dyld cache), './libSDL2.dylib' (code signature invalid in <35C6CC5A-D0C5-30F4-99BE-B95F5F410B5D> '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (errno=1) sliceOffset=0x001A0000, codeBlobOffset=0x001614B0, codeBlobSize=0x000090B0), '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (code signature invalid in <35C6CC5A-D0C5-30F4-99BE-B95F5F410B5D> '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (errno=1) sliceOffset=0x001A0000, codeBlobOffset=0x001614B0, codeBlobSize=0x000090B0), '/System/Volumes/Preboot/Cryptexes/OS/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (no such file), '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (code signature invalid in <35C6CC5A-D0C5-30F4-99BE-B95F5F410B5D> '/private/var/folders/k1/6z9xgycj37g2m1v_8n5frrrr0000gn/T/cosmopolitan-sdl2/o/libSDL2.dylib' (errno=1) sliceOffset=0x001A0000, codeBlobOffset=0x001614B0, codeBlobSize=0x000090B0)
z-erica commented 2 weeks ago

mac os silicon is a currently unsupported platform, since the dylib that's bundled is seemingly not signed correctly (see code signature invalid in your log) and i have no system with which to develop or even test a possible fix