KieronJ / rpsx

A PlayStation emulator written in Rust.
MIT License
42 stars 2 forks source link

Unable to build SDL on macOS #14

Open DannyJJK opened 1 year ago

DannyJJK commented 1 year ago

Version: rpsx #bc5fb54 OS: macOS Ventura 13.5.2 (22G91) Hardware: MacBook Pro (13-inch, 2019)

I ran cargo build and got some errors during the SDL part:

  running: cd "/Users/dannykirkham/Proyectos/rpsx/target/debug/build/sdl2-sys-5e292771725ef0ce/out/build" && MAKEFLAGS="-j --jobserver-fds=8,10 --jobserver-auth=8,10" "cmake" "--build" "." "--target" "install" "--config" "release"
  [  1%] Building C object CMakeFiles/SDL2main.dir/src/main/dummy/SDL_dummy_main.c.o
  [  1%] Building C object CMakeFiles/SDL2.dir/src/file/cocoa/SDL_rwopsbundlesupport.m.o
  [  1%] Building C object CMakeFiles/SDL2.dir/src/SDL_assert.c.o
  [  4%] Building C object CMakeFiles/SDL2.dir/src/SDL_log.c.o
  [  4%] Building C object CMakeFiles/SDL2.dir/src/SDL.c.o
  [  4%] Building C object CMakeFiles/SDL2.dir/src/SDL_error.c.o
  [  5%] Building C object CMakeFiles/SDL2.dir/src/SDL_hints.c.o
  [  5%] Building C object CMakeFiles/SDL2.dir/src/SDL_dataqueue.c.o
  [  6%] Linking C static library libSDL2main.a
  [  6%] Building C object CMakeFiles/SDL2.dir/src/atomic/SDL_atomic.c.o
  [  8%] Building C object CMakeFiles/SDL2.dir/src/atomic/SDL_spinlock.c.o
  [  8%] Building C object CMakeFiles/SDL2.dir/src/audio/SDL_audio.c.o
  [  8%] Built target SDL2main
  [  8%] Building C object CMakeFiles/SDL2.dir/src/audio/SDL_audiocvt.c.o
  [  9%] Building C object CMakeFiles/SDL2.dir/src/audio/SDL_audiodev.c.o
  [  9%] Building C object CMakeFiles/SDL2.dir/src/audio/SDL_audiotypecvt.c.o
  [ 10%] Building C object CMakeFiles/SDL2.dir/src/audio/SDL_mixer.c.o
  [ 11%] Building C object CMakeFiles/SDL2.dir/src/audio/SDL_wave.c.o
  [ 11%] Building C object CMakeFiles/SDL2.dir/src/cpuinfo/SDL_cpuinfo.c.o
  [ 12%] Building C object CMakeFiles/SDL2.dir/src/dynapi/SDL_dynapi.c.o

  --- stderr
  CMake Deprecation Warning at CMakeLists.txt:5 (cmake_minimum_required):
    Compatibility with CMake < 3.5 will be removed from a future version of
    CMake.

    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.

  CMake Warning:
    Manually-specified variables were not used by the project:

      CMAKE_ASM_COMPILER
      CMAKE_ASM_FLAGS

  /Users/dannykirkham/.cargo/registry/src/github.com-1ecc6299db9ec823/sdl2-sys-0.35.2/SDL/src/file/cocoa/SDL_rwopsbundlesupport.m:45:20: error: mixing declarations and code is incompatible with standards before C99 [-Werror,-Wdeclaration-after-statement]
      NSFileManager* file_manager = [NSFileManager defaultManager];
                     ^
  1 error generated.
  make[2]: *** [CMakeFiles/SDL2.dir/src/file/cocoa/SDL_rwopsbundlesupport.m.o] Error 1
  make[2]: *** Waiting for unfinished jobs....
  /Users/dannykirkham/.cargo/registry/src/github.com-1ecc6299db9ec823/sdl2-sys-0.35.2/SDL/src/cpuinfo/SDL_cpuinfo.c:1086:16: warning: variable 'realptr' set but not used [-Wunused-but-set-variable]
          void **realptr = (void **) mem;
                 ^
  /Users/dannykirkham/.cargo/registry/src/github.com-1ecc6299db9ec823/sdl2-sys-0.35.2/SDL/src/cpuinfo/SDL_cpuinfo.c:1127:16: warning: variable 'realptr' set but not used [-Wunused-but-set-variable]
          void **realptr = (void **) ptr;
                 ^
  2 warnings generated.
  make[1]: *** [CMakeFiles/SDL2.dir/all] Error 2
  make: *** [all] Error 2
  thread 'main' panicked at '
  command did not execute successfully, got: exit status: 2

  build script failed, must exit now', /Users/dannykirkham/.cargo/registry/src/github.com-1ecc6299db9ec823/cmake-0.1.50/src/lib.rs:1098:5
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
KieronJ commented 1 year ago

From what I can tell this is an issue with the SDL2 crate. Allegedly it should be fixed once a new release is published.