cheetah icon indicating copy to clipboard operation
cheetah copied to clipboard

Won't build on MacOS 14

Open abeburnett opened this issue 1 year ago • 6 comments

This looks like a super cool and useful project, but it won't build on MacOS 14.0. Here's the issues I'm getting when I try to build it in Xcode targeting macOS 14.0:

Cheetah 3 issues CheetahApp 'onChange (of:perform:)' was deprecated in macOS 14.0: Use 'onChange with a two or zero parameter action closure instead. く CoachView 'onChange (of:perform:)' was deprecated in macOS 14.0: Use 'onChange with a two or zero parameter action closure instead. RSDimensionHugging TextField Cannot use class 'NSTextField' here; 'AppKit' was not imported by this file く CheetahIPC 1 issue く Server 'unarchiveObject (with:)' was deprecated in macOS 10.14: Use +unarchivedObjectOfClass:fromData:error: instead • LibWhisper 378 issues Could not find or use auto-linked framework 'CoreAudioTypes': framework 'CoreAudioTypes' not found

  • Undefined symbols: × Linker command failed with exit code 1 (use -v to see invocation) common-sdl Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' common Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' 'wstring_convert<std::codecvt_utf8<wchar_t>>' is deprecated 'codecvt_utf8<wchar_t>' is deprecated 'wstring_convert<std::codecvt_utf8<wchar_t>>' is deprecated 'codecvt_utf8<wchar_t>' is deprecated Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'const int' Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'value_type' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'value_type' (aka 'int')

ggml Unused function 'ggm|_up32' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32 t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int32_t' (aka 'int') Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int'

/Users/abrahamburnett/workspace/whisper.cpp/ggml.c:9611:17 'cblas_sgemm' is deprecated: first deprecated in macOS 13.3 - An updated CBLAS interface supporting ILP64 is available. Please compile with -DACCELERATE_NEW_LAPACK to access the new headers and -DACCELERATE_LAPACK_ILP64 for ILP64 support.

stream

A 'whisper_init_from _file' is deprecated: use whisper_init_from_file_with_params instead Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'const int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' whisper • Unused function 'ggml_mul_mat_pad' A Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'const int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'int64_t' (aka 'long long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'const int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'const int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'int' A Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'const int' Implicit conversion loses integer precision: 'size_type' (aka 'unsigned long') to 'const int'

abeburnett avatar Nov 10 '23 07:11 abeburnett

The main issue seems to be:

Ld /Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Products/Debug/LibWhisper.framework/Versions/A/LibWhisper normal (in target 'LibWhisper' from project 'Cheetah') cd /Users/abrahamburnett/workspace/cheetah /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -Xlinker -reproducible -target arm64-apple-macos14.0 -dynamiclib -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk -O0 -L/Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Intermediates.noindex/EagerLinkingTBDs/Debug -L/Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Products/Debug -F/Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Intermediates.noindex/EagerLinkingTBDs/Debug -F/Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Products/Debug -filelist /Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Intermediates.noindex/Cheetah.build/Debug/LibWhisper.build/Objects-normal/arm64/LibWhisper.LinkFileList -install_name @rpath/LibWhisper.framework/Versions/A/LibWhisper -Xlinker -rpath -Xlinker @executable_path/../Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Intermediates.noindex/Cheetah.build/Debug/LibWhisper.build/Objects-normal/arm64/LibWhisper_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx -L/usr/lib/swift -Xlinker -add_ast_path -Xlinker /Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Intermediates.noindex/Cheetah.build/Debug/LibWhisper.build/Objects-normal/arm64/LibWhisper.swiftmodule /opt/homebrew/lib/libSDL2.a -l iconv -weak_framework CoreHaptics -weak_framework GameController -weak_framework ForceFeedback -weak_framework Carbon -weak_framework AppKit -fprofile-instr-generate -framework CoreAudioTypes -framework Accelerate -Xlinker -no_adhoc_codesign -compatibility_version 1 -current_version 1 -Xlinker -dependency_info -Xlinker /Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Intermediates.noindex/Cheetah.build/Debug/LibWhisper.build/Objects-normal/arm64/LibWhisper_dependency_info.dat -o /Users/abrahamburnett/Library/Developer/Xcode/DerivedData/Cheetah-dgmudtsfftmgikghkzbadgcanayg/Build/Products/Debug/LibWhisper.framework/Versions/A/LibWhisper

ERROR: Framework 'CoreAudioTypes' not found or something like that

abeburnett avatar Nov 10 '23 08:11 abeburnett

Screenshot 2023-11-18 at 02 48 12 Got the building issue on MacOS 14

JACKIEZHAOKAI avatar Nov 17 '23 18:11 JACKIEZHAOKAI

Unable to build on MacOS 14.1.1 as well

Build Cheetah_2023-11-22T19-48-12.txt

mpattan avatar Nov 23 '23 02:11 mpattan

Try to use whisper v1.4.0. Go to whisper directory and type git checkout v1.4.0. Than try to rebuild the project. So, current whisper version isn't compatible with cheetah.

ikitaev avatar Dec 09 '23 15:12 ikitaev

WechatIMG1949 Same here. Find something else. https://github.com/libsdl-org/SDL/issues/8702 But still don't know how to solve the problem.

Fettes avatar Feb 28 '24 09:02 Fettes

Screenshot 2023-11-18 at 02 48 12 Got the building issue on MacOS 14

You failed to link whisper.cpp. You can follow the readme and try to download whister.cpp

Fettes avatar Feb 28 '24 09:02 Fettes