mavethee / suyu-macos-builds-script

Zsh script to install needed dependencies, compile and run Suyu, a Nintendo Switch emulator on macOS syetem, preferably Apple Silicon.
GNU General Public License v3.0
29 stars 5 forks source link

Fix build and rebrand to Suyu #16

Closed shinra-electric closed 8 months ago

shinra-electric commented 8 months ago

Todo: Change the name of the repository and update some of the links in the readme

mavethee commented 8 months ago

Cmake fails:

Running CMake...
-- The C compiler identification is AppleClang 15.0.0.15000309
-- The CXX compiler identification is AppleClang 15.0.0.15000309
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using Precompiled Headers.
-- Target architecture: arm64
-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.84.0/BoostConfig.cmake (found suitable version "1.84.0", minimum required is "1.79.0") found components: context
-- Could NOT find enet: (Required is at least version "1.3") (found )
-- Performing Test HAVE_FFI_CALL
-- Performing Test HAVE_FFI_CALL - Success
-- Found FFI: /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/lib/libffi.tbd
-- Looking for histedit.h
-- Looking for histedit.h - found
-- Found LibEdit: /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include (found version "2.11")
-- Performing Test Terminfo_LINKABLE
-- Performing Test Terminfo_LINKABLE - Success
-- Found Terminfo: /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/lib/libcurses.tbd
-- Found ZLIB: /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/lib/libz.tbd (found version "1.2.12")
-- Found zstd: /opt/homebrew/lib/cmake/zstd/zstdConfig.cmake (found version "1.5.5")
-- Found LibXml2: /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/lib/libxml2.tbd (found version "2.9.13")
-- Found LLVM: /opt/homebrew/opt/llvm@17/lib/cmake/llvm/LLVMConfig.cmake (found suitable version "17.0.6", minimum required is "17.0.2") found components: Demangle
-- Found lz4: /opt/homebrew/Cellar/lz4/1.9.4/lib/liblz4.dylib (found version "1.9.4")
-- Found nlohmann_json: /opt/homebrew/share/cmake/nlohmann_json/nlohmann_jsonConfig.cmake (found suitable version "3.11.3", minimum required is "3.8")
-- Found Opus: /opt/homebrew/Cellar/opus/1.5.1/lib/libopus.dylib (found suitable version "1.5.1", minimum required is "1.3")
-- Could NOT find RenderDoc (missing: RenderDoc_INCLUDE_DIR)
-- Could NOT find SimpleIni (missing: SIMPLEINI_INCLUDEDIR) (found version "")
-- Could NOT find stb (missing: stb_image_INCLUDE_DIR stb_image_resize_INCLUDE_DIR stb_image_write_INCLUDE_DIR)
-- Could NOT find VulkanMemoryAllocator (missing: VulkanMemoryAllocator_DIR)
-- Found ZLIB: /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/lib/libz.tbd (found suitable version "1.2.12", minimum required is "1.2")
-- Found zstd: /opt/homebrew/lib/cmake/zstd/zstdConfig.cmake (found suitable version "1.5.5", minimum required is "1.5")
-- Could NOT find oaknut (missing: oaknut_DIR)
-- Could NOT find dynarmic (missing: dynarmic_DIR)
-- Could NOT find cubeb (missing: cubeb_DIR)
CMake Error at CMakeLists.txt:349 (find_package):
  By not providing "FindCatch2.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Catch2", but
  CMake did not find one.

  Could not find a package configuration file provided by "Catch2" (requested
  version 3.0.1) with any of the following names:

    Catch2Config.cmake
    catch2-config.cmake

  Add the installation prefix of "Catch2" to CMAKE_PREFIX_PATH or set
  "Catch2_DIR" to a directory containing one of the above files.  If "Catch2"
  provides a separate development package or SDK, be sure it has been
  installed.

-- Configuring incomplete, errors occurred!
Building suyu...
ninja: error: loading 'build.ninja': No such file or directory
Build failed. Please check the build output for errors.
mavethee commented 8 months ago

On a note, I will wait with renaming till it will be all sorted out. Archived links on web.archive.org work too. Unless there are some links I forgot to change? Suyu project is funny to me, seeing their amazing commits, but it's all starting somewhere, who knows.

shinra-electric commented 8 months ago

Cmake fails:

Hmm, CMake shouldn't fail because of catch2 if tests are set to off with -DSUYU_TESTS=OFF

shinra-electric commented 8 months ago

I can't reproduce the CMake failure. Are you sure you're on the right branch?

mavethee commented 8 months ago

@shinra-electric yup it's done on ur branch.

shinra-electric commented 8 months ago

@shinra-electric yup it's done on ur branch.

And CMake settings are like this? :

# Run CMake with specified options
cmake .. -GNinja \
    -DCMAKE_BUILD_TYPE=RELEASE \
    -DSUYU_USE_BUNDLED_VCPKG=OFF \
    -DSUYU_TESTS=OFF \
    -DENABLE_WEB_SERVICE=OFF \
    -DENABLE_LIBUSB=OFF \
    -DSDL_ARMNEON=ON \
    -DENABLE_QT6=ON \
    -DSUYU_USE_EXTERNAL_VULKAN_HEADERS=OFF
mavethee commented 8 months ago

You forgot about catch2 if someone lacks of it.

CMake Error at externals/Vulkan-Headers/CMakeLists.txt:42 (add_library):
  add_library cannot create ALIAS target "Vulkan::Headers" because another
  target with the same name already exists.

Now this seems to be an issue. Corrected script with cmake you provided, I guess spaces issue, but doesn't impacts on error ofc.

shinra-electric commented 8 months ago

You forgot about catch2 if someone lacks of it.

CMake Error at externals/Vulkan-Headers/CMakeLists.txt:42 (add_library):
  add_library cannot create ALIAS target "Vulkan::Headers" because another
  target with the same name already exists.

Now this seems to be an issue. Corrected script with cmake you provided, I guess spaces issue, but doesn't impacts on error ofc.

Again, this is a CMake options issue. The options are not being picked up. Can you check your CMakeLists.txt file in the source folder? Make sure that the options say SUYU and not YUZU

mavethee commented 8 months ago

Again, this is a CMake options issue. The options are not being picked up. Can you check your CMakeLists.txt file in the source folder? Make sure that the options say SUYU and not YUZU

@shinra-electric yeah, re-cloning suyu resolves the case. I've nuked yuzu leftovers a while ago.