Updating to the latest HISE 3.0.3 build failure
-
@d-healey I see. I will, thank you for linking the video!
-
@d-healey I watched your video and I understand git and version control now and how to make sure you get the right version. That was really helpful, thank you.
I am still getting an error on compiling, here is the full error message:
Ld /Users/[My name]/Downloads/HISE-3.0.3/projects/standalone/Builds/MacOSX/build/Release/HISE.app/Contents/MacOS/HISE normal (in target 'HISE Standalone - App' from project 'HISE Standalone') cd /Users/[My name]/Downloads/HISE-3.0.3/projects/standalone/Builds/MacOSX /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -target x86_64-apple-macos10.9 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -L/Users/[My name]/Downloads/HISE-3.0.3/projects/standalone/Builds/MacOSX/build/Release -L../../../../tools/faust/fakelib -F/Users/[My name]/Downloads/HISE-3.0.3/projects/standalone/Builds/MacOSX/build/Release -filelist /Users/[My name]/Library/Developer/Xcode/DerivedData/HISE_Standalone-aegggqgrigitlrbhcadzloojgjwy/Build/Intermediates.noindex/HISE\ Standalone.build/Release/HISE\ Standalone\ -\ App.build/Objects-normal/x86_64/HISE.LinkFileList -dead_strip -stdlib\=libc++ -lfaust -rpath /Users/[My name]/Downloads/HISE-3.0.3/projects/standalone/Builds/MacOSX/../../../../tools/faust/lib -framework Accelerate -framework AudioToolbox -framework Carbon -framework Cocoa -framework CoreAudio -framework CoreAudioKit -framework CoreMIDI -framework DiscRecording -framework Foundation -framework IOKit -framework OpenGL -framework QuartzCore -framework WebKit -Xlinker -dependency_info -Xlinker /Users/[My name]/Library/Developer/Xcode/DerivedData/HISE_Standalone-aegggqgrigitlrbhcadzloojgjwy/Build/Intermediates.noindex/HISE\ Standalone.build/Release/HISE\ Standalone\ -\ App.build/Objects-normal/x86_64/HISE_dependency_info.dat -o /Users/[My name]/Downloads/HISE-3.0.3/projects/standalone/Builds/MacOSX/build/Release/HISE.app/Contents/MacOS/HISE ld: warning: ignoring file ../../../../tools/faust/fakelib/libfaust.a, building for macOS-x86_64 but attempting to link with file built for macOS-arm64 LLVM ERROR: SmallVector unable to grow. Requested capacity (4294967296) is larger than maximum value for size type (4294967295) clang: error: unable to execute command: Abort trap: 6 clang: error: linker command failed due to signal (use -v to see invocation) Command Ld failed with a nonzero exit code
I deleted all other copies of the source code from my system.
Is there anything I can try to fix the error? -
@TNTHM Are you sure you are building the correct thing?
You should be building just the Release option, not the Release with Faust.
-
@d-healey Good to double check. I am building release, yes.
-
@d-healey In the release notes for How to use Faust on macOS:
"Integrating Faust on macOS is a bit special because (for now) we're running HISE under Rosetta so we need to use the x86 Faust libraries"
I looked up Rosetta and it says that it is an interpreter program for Intel x64 architecture to communicate with arm64 architecture. If I am compiling for x64 architecture do I possibly need to run the compiler without Rosetta?
-
Run this script. It will download the latest develop branch to your desktop and build HISE.
-
@d-healey First off this script is amazing and I think something like this would be a great addition to HISE in general. Thank you for sharing. It's awesome that it downloads and compiles the latest version.
I am still getting an error, here is what I see in terminal:
▸ Compiling Main.cpp ⚠️ /Users/[My name]/Desktop/HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../hi_dsp_library/../hi_tools/hi_tools/MiscToolClasses.h:2780:50: implicit conversion loses integer precision: 'long long' to 'int' [-Wshorten-64-to-32] Range<int> estimatedRange(uptime, uptime + currentBlockSize * 3); ~~~~~~~~ ^~~~~~ ⚠️ /Users/[My name]/Desktop/HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../hi_dsp_library/../hi_tools/hi_tools/MiscToolClasses.h:2780:35: implicit conversion loses integer precision: 'juce::int64' (aka 'long long') to 'int' [-Wshorten-64-to-32] Range<int> estimatedRange(uptime, uptime + currentBlockSize * 3); ~~~~~~~~~~~~~~ ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ ⚠️ /Users/[My name]/Desktop/HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_core/../hi_dsp_library/../hi_tools/hi_tools/MiscToolClasses.h:2784:37: implicit conversion loses integer precision: 'juce::int64' (aka 'long long') to 'int' [-Wshorten-64-to-32] if(!estimatedRange.contains(uptime)) ~~~~~~~~~~~~~~ ^~~~~~ ▸ Compiling HiseEventBufferUnitTests.cpp ▸ Compiling DspUnitTests.cpp ▸ Compiling BinaryData.cpp ▸ Linking HISE ⚠️ ld: ignoring file ../../../../tools/faust/fakelib/libfaust.a, building for macOS-x86_64 but attempting to link with file built for macOS-arm64 ❌ clang: error: unable to execute command: Abort trap: 6 ❌ clang: error: linker command failed due to signal (use -v to see invocation) ** BUILD FAILED ** The following build commands failed: Ld /Users/[My name]/Desktop/HISE/projects/standalone/Builds/MacOSX/build/Release/HISE.app/Contents/MacOS/HISE normal (in target 'HISE Standalone - App' from project 'HISE Standalone') (1 failure)
-
@TNTHM Ok that error I have seen when using certain versions of xcode. Try updating (or downgrading) to a different version.
-
@d-healey great! I will do that. Is there a version of Xcode that you have successfully compiled 3.0.3 on?
-
Tldr for this thread:
Upon trying to compile the source code for HISE 3.0.3 I was running into this error:
Ignoring file ../../../../tools/faust/fakelib/libfaust.a, building for macOS-x86_64 but attempting to link with file built for macOS-arm64
We also tried compiling through terminal directly which returned a similar error:
▸ Linking HISE ⚠️ ld: ignoring file ../../../../tools/faust/fakelib/libfaust.a, building for macOS-x86_64 but attempting to link with file built for macOS-arm64 ❌ clang: error: unable to execute command: Abort trap: 6 ❌ clang: error: linker command failed due to signal (use -v to see invocation) ** BUILD FAILED ** The following build commands failed: Ld /Users/[My name]/Desktop/HISE/projects/standalone/Builds/MacOSX/build/Release/HISE.app/Contents/MacOS/HISE normal (in target 'HISE Standalone - App' from project 'HISE Standalone') (1 failure)
The issue is with the version of Xcode being used to compile.
I am on:
Mac Intel i7, 2020
Mac OS 12.1, Monterey
HISE 3.0.3 source code
JUCE v6.1.4 ( comes with 3.0.3 source code)Xcode version that did not work:
13.4.1Xcode version that does work:
13.0@d-healey kindly provided the following code which will automatically download and compile the latest HISE developer source code from git:
#!/bin/bash # Download HISE cd ~/Desktop git clone https://github.com/christophhart/HISE.git cd ./HISE git checkout develop # Extract SDKs unzip ./tools/SDK/sdk.zip -d ~/Desktop/HISE/tools/SDK # Build HISE ./tools/projucer/Projucer.app/Contents/MacOS/Projucer --resave ~/Desktop/HISE/projects/standalone/HISE\ Standalone.jucer cd ~/Desktop/HISE/projects/standalone/Builds/MacOSX xcodebuild -project "HISE Standalone.xcodeproj" -configuration Release -jobs 2 | xcpretty
This can be saved in a text editor as:
build_hise_osx.shYou can execute this script by saving it to your Documents folder and typing into terminal:
sudo sh /Users/YOUR_USERNAME/Documents/build_hise_osx.sh
Thank you @d-healey and @Lindon for helping me troubleshoot this. I appreciate your time and energy.