Can't build toolchain

I'm trying to build a toolchain from main using build-toolchain script but it keeps failing and I can't find a solution.
Chip: Apple M3 Pro
macOS: 14.3 (23D56)

[4/2164][  0%][1.821s] Linking CXX executable bin/llvm-profdata
FAILED: bin/llvm-profdata 
: && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -gline-tables-only -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -O2 -DNDEBUG -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -mmacosx-version-min=10.13 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -Wl,-dead_strip tools/llvm-profdata/CMakeFiles/llvm-profdata.dir/llvm-profdata.cpp.o tools/llvm-profdata/CMakeFiles/llvm-profdata.dir/llvm-profdata-driver.cpp.o -o bin/llvm-profdata  -Wl,-rpath,@loader_path/../lib  lib/libLLVMCore.a  lib/libLLVMObject.a  lib/libLLVMProfileData.a  lib/libLLVMSupport.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMCASUtil.a  lib/libLLVMCAS.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMTextAPI.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lm  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libz.tbd  /opt/homebrew/lib/libzstd.dylib  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libcurses.tbd && :
ld: warning: ignoring duplicate libraries: 'lib/libLLVMCore.a', 'lib/libLLVMObject.a', 'lib/libLLVMSupport.a'
ld: warning: ignoring file '/opt/homebrew/Cellar/zstd/1.5.5/lib/libzstd.1.5.5.dylib': found architecture 'arm64', required architecture 'x86_64'
ld: Undefined symbols:
  _ZSTD_decompress, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_getErrorName, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_isError, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[5/2164][  0%][1.998s] Linking CXX executable bin/llvm-cas-dump
FAILED: bin/llvm-cas-dump 
: && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -gline-tables-only -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -O2 -DNDEBUG -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -mmacosx-version-min=10.13 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -Wl,-dead_strip tools/llvm-cas-dump/CMakeFiles/llvm-cas-dump.dir/llvm-cas-dump.cpp.o tools/llvm-cas-dump/CMakeFiles/llvm-cas-dump.dir/CASDWARFObject.cpp.o tools/llvm-cas-dump/CMakeFiles/llvm-cas-dump.dir/MCCASPrinter.cpp.o tools/llvm-cas-dump/CMakeFiles/llvm-cas-dump.dir/StatsCollector.cpp.o -o bin/llvm-cas-dump  -Wl,-rpath,@loader_path/../lib  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMSupport.a  lib/libLLVMCAS.a  lib/libLLVMMCCAS.a  lib/libLLVMCASUtil.a  lib/libLLVMBinaryFormat.a  lib/libLLVMObject.a  lib/libLLVMTargetParser.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMMCParser.a  lib/libLLVMTextAPI.a  lib/libLLVMMC.a  lib/libLLVMCASUtil.a  lib/libLLVMCAS.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMSupport.a  -lm  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libz.tbd  /opt/homebrew/lib/libzstd.dylib  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libcurses.tbd  lib/libLLVMDemangle.a && :
ld: warning: ignoring duplicate libraries: 'lib/libLLVMBinaryFormat.a', 'lib/libLLVMCAS.a', 'lib/libLLVMCASUtil.a', 'lib/libLLVMDebugInfoDWARF.a', 'lib/libLLVMObject.a', 'lib/libLLVMSupport.a', 'lib/libLLVMTargetParser.a'
ld: warning: ignoring file '/opt/homebrew/Cellar/zstd/1.5.5/lib/libzstd.1.5.5.dylib': found architecture 'arm64', required architecture 'x86_64'
ld: Undefined symbols:
  _ZSTD_decompress, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_getErrorName, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_isError, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[6/2164][  0%][2.407s] Linking CXX executable bin/llvm-lto
FAILED: bin/llvm-lto 
: && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -gline-tables-only -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -O2 -DNDEBUG -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -mmacosx-version-min=10.13 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -Wl,-dead_strip tools/llvm-lto/CMakeFiles/llvm-lto.dir/llvm-lto.cpp.o -o bin/llvm-lto  -Wl,-rpath,@loader_path/../lib  lib/libLLVMX86AsmParser.a  lib/libLLVMARMAsmParser.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMPowerPCAsmParser.a  lib/libLLVMSystemZAsmParser.a  lib/libLLVMMipsAsmParser.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMWebAssemblyAsmParser.a  lib/libLLVMX86CodeGen.a  lib/libLLVMARMCodeGen.a  lib/libLLVMAArch64CodeGen.a  lib/libLLVMPowerPCCodeGen.a  lib/libLLVMSystemZCodeGen.a  lib/libLLVMMipsCodeGen.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMWebAssemblyCodeGen.a  lib/libLLVMX86Desc.a  lib/libLLVMARMDesc.a  lib/libLLVMAArch64Desc.a  lib/libLLVMPowerPCDesc.a  lib/libLLVMSystemZDesc.a  lib/libLLVMMipsDesc.a  lib/libLLVMRISCVDesc.a  lib/libLLVMWebAssemblyDesc.a  lib/libLLVMX86Info.a  lib/libLLVMARMInfo.a  lib/libLLVMAArch64Info.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMBitReader.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGen.a  lib/libLLVMCore.a  lib/libLLVMIRReader.a  lib/libLLVMipo.a  lib/libLLVMLTO.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMTarget.a  lib/libLLVMTargetParser.a  lib/libLLVMMCDisassembler.a  lib/libLLVMARMUtils.a  lib/libLLVMAArch64Utils.a  lib/libLLVMCFGuard.a  lib/libLLVMGlobalISel.a  lib/libLLVMAsmPrinter.a  lib/libLLVMSelectionDAG.a  lib/libLLVMWebAssemblyUtils.a  lib/libLLVMWebAssemblyDesc.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMExtensions.a  lib/libLLVMPasses.a  lib/libLLVMCodeGen.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMMCCAS.a  lib/libLLVMTarget.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMCoroutines.a  lib/libLLVMipo.a  lib/libLLVMBitWriter.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMLinker.a  lib/libLLVMVectorize.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMTransformUtils.a  lib/libLLVMIRPrinter.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMObject.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMCASUtil.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMRemoteCachingService.a  lib/libLLVMCAS.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMRemoteNullService.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lm  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libz.tbd  /opt/homebrew/lib/libzstd.dylib  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libcurses.tbd && :
ld: warning: ignoring duplicate libraries: 'lib/libLLVMBitReader.a', 'lib/libLLVMBitWriter.a', 'lib/libLLVMCodeGen.a', 'lib/libLLVMCore.a', 'lib/libLLVMIRReader.a', 'lib/libLLVMMC.a', 'lib/libLLVMObject.a', 'lib/libLLVMSupport.a', 'lib/libLLVMTarget.a', 'lib/libLLVMTargetParser.a', 'lib/libLLVMWebAssemblyDesc.a', 'lib/libLLVMWebAssemblyInfo.a', 'lib/libLLVMipo.a'
ld: warning: ignoring file '/opt/homebrew/Cellar/zstd/1.5.5/lib/libzstd.1.5.5.dylib': found architecture 'arm64', required architecture 'x86_64'
ld: Undefined symbols:
  _ZSTD_compress, referenced from:
      llvm::compression::zstd::compress(llvm::ArrayRef<unsigned char>, llvm::SmallVectorImpl<unsigned char>&, int) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_compressBound, referenced from:
      llvm::compression::zstd::compress(llvm::ArrayRef<unsigned char>, llvm::SmallVectorImpl<unsigned char>&, int) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_decompress, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_getErrorName, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_isError, referenced from:
      llvm::compression::zstd::compress(llvm::ArrayRef<unsigned char>, llvm::SmallVectorImpl<unsigned char>&, int) in libLLVMSupport.a[37](Compression.cpp.o)
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[7/2164][  0%][2.440s] Linking CXX shared library lib/libLTO.dylib
FAILED: lib/libLTO.dylib 
: && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -gline-tables-only -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -O2 -DNDEBUG -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -mmacosx-version-min=10.13 -dynamiclib -Wl,-headerpad_max_install_names -Wl,-dead_strip -Wl,-exported_symbols_list,"/Users/mateusrodrigues/swift-project/build/buildbot_osx/llvm-macosx-x86_64/tools/lto/LTO.exports" -compatibility_version 1 -current_version 17.0.0 -o lib/libLTO.dylib -install_name @rpath/libLTO.dylib tools/lto/CMakeFiles/LTO.dir/LTODisassembler.cpp.o tools/lto/CMakeFiles/LTO.dir/lto.cpp.o  -Wl,-rpath,@loader_path/../lib  lib/libLLVMX86AsmParser.a  lib/libLLVMARMAsmParser.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMPowerPCAsmParser.a  lib/libLLVMSystemZAsmParser.a  lib/libLLVMMipsAsmParser.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMWebAssemblyAsmParser.a  lib/libLLVMX86CodeGen.a  lib/libLLVMARMCodeGen.a  lib/libLLVMAArch64CodeGen.a  lib/libLLVMPowerPCCodeGen.a  lib/libLLVMSystemZCodeGen.a  lib/libLLVMMipsCodeGen.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMWebAssemblyCodeGen.a  lib/libLLVMX86Desc.a  lib/libLLVMARMDesc.a  lib/libLLVMAArch64Desc.a  lib/libLLVMPowerPCDesc.a  lib/libLLVMSystemZDesc.a  lib/libLLVMMipsDesc.a  lib/libLLVMRISCVDesc.a  lib/libLLVMWebAssemblyDesc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMARMDisassembler.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMPowerPCDisassembler.a  lib/libLLVMSystemZDisassembler.a  lib/libLLVMMipsDisassembler.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMWebAssemblyDisassembler.a  lib/libLLVMX86Info.a  lib/libLLVMARMInfo.a  lib/libLLVMAArch64Info.a  lib/libLLVMPowerPCInfo.a  lib/libLLVMSystemZInfo.a  lib/libLLVMMipsInfo.a  lib/libLLVMRISCVInfo.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMBitReader.a  lib/libLLVMCore.a  lib/libLLVMCodeGen.a  lib/libLLVMLTO.a  lib/libLLVMMC.a  lib/libLLVMMCDisassembler.a  lib/libLLVMSupport.a  lib/libLLVMTarget.a  lib/libLLVMCFGuard.a  lib/libLLVMGlobalISel.a  lib/libLLVMAsmPrinter.a  lib/libLLVMSelectionDAG.a  lib/libLLVMWebAssemblyUtils.a  lib/libLLVMARMDesc.a  lib/libLLVMARMInfo.a  lib/libLLVMARMUtils.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMSystemZDesc.a  lib/libLLVMSystemZInfo.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMWebAssemblyDesc.a  lib/libLLVMWebAssemblyInfo.a  lib/libLLVMMCDisassembler.a  lib/libLLVMExtensions.a  lib/libLLVMPasses.a  lib/libLLVMCodeGen.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMMCCAS.a  lib/libLLVMTarget.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMCoroutines.a  lib/libLLVMipo.a  lib/libLLVMInstrumentation.a  lib/libLLVMBitWriter.a  lib/libLLVMLinker.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMVectorize.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMTransformUtils.a  lib/libLLVMIRPrinter.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMCASUtil.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMRemoteCachingService.a  lib/libLLVMCAS.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMRemoteNullService.a  lib/libLLVMSupport.a  lib/libLLVMDemangle.a  -lm  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libz.tbd  /opt/homebrew/lib/libzstd.dylib  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libcurses.tbd && :
ld: warning: ignoring duplicate libraries: 'lib/libLLVMAArch64Desc.a', 'lib/libLLVMAArch64Info.a', 'lib/libLLVMARMDesc.a', 'lib/libLLVMARMInfo.a', 'lib/libLLVMBitReader.a', 'lib/libLLVMCodeGen.a', 'lib/libLLVMCore.a', 'lib/libLLVMMC.a', 'lib/libLLVMMCDisassembler.a', 'lib/libLLVMRISCVDesc.a', 'lib/libLLVMRISCVInfo.a', 'lib/libLLVMSupport.a', 'lib/libLLVMSystemZDesc.a', 'lib/libLLVMSystemZInfo.a', 'lib/libLLVMTarget.a', 'lib/libLLVMWebAssemblyDesc.a', 'lib/libLLVMWebAssemblyInfo.a'
ld: warning: ignoring file '/opt/homebrew/Cellar/zstd/1.5.5/lib/libzstd.1.5.5.dylib': found architecture 'arm64', required architecture 'x86_64'
ld: Undefined symbols:
  _ZSTD_compress, referenced from:
      llvm::compression::zstd::compress(llvm::ArrayRef<unsigned char>, llvm::SmallVectorImpl<unsigned char>&, int) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_compressBound, referenced from:
      llvm::compression::zstd::compress(llvm::ArrayRef<unsigned char>, llvm::SmallVectorImpl<unsigned char>&, int) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_decompress, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_getErrorName, referenced from:
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
  _ZSTD_isError, referenced from:
      llvm::compression::zstd::compress(llvm::ArrayRef<unsigned char>, llvm::SmallVectorImpl<unsigned char>&, int) in libLLVMSupport.a[37](Compression.cpp.o)
      llvm::compression::zstd::decompress(llvm::ArrayRef<unsigned char>, unsigned char*, unsigned long&) in libLLVMSupport.a[37](Compression.cpp.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[14/2164][  0%][4.115s] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPDirectives.cpp.o
ninja: build stopped: subcommand failed.
ERROR: command terminated with a non-zero exit status 1, aborting

ERROR: command terminated with a non-zero exit status 1, aborting

You should not be using build-toolchain for local builds. The recommended way to build is build-script, as clarified in the GettingStarted.md document.

As for ZSTD linker issues, make sure you don't have zstd package installed with Homebrew or some other means before building, as it interferes with the build process.

2 Likes

Thanks! Indeed this script doesn't seem to work correctly so I will just let it be.

I'm trying to understand the current issue with the build-toolchain script, as it's simply calling the build-script with a specific preset for macOS or Linux toolchain based on the platform you are executing it on.

./utils/build-script ${DRY_RUN} ${DISTCC_FLAG} ${PRESET_FILE_FLAGS} \
        ${SCCACHE_FLAG} \
        --preset="${PRESET_PREFIX}${SWIFT_PACKAGE}${NO_TEST}${USE_OS_RUNTIME}" \
...

This script should not be the first option for someone getting started. However, it should enable developers to build a complete toolchain at the desk.

Note: This script is not used in CI directly. However, the preset used by this script is used by CI too.

This specific issue @mtsrodrigues is seeing is due to homebrew does not have universal (arm64 and x86_64) zstd to crosscompile for x86_64.

Sorry to revive an old topic, but I ran into this today as well. I'd like to be able to build a full toolchain at desk for macOS and for Linux.

If I'm understanding correctly, the build does require a universal zstd dylib to build for both arm64 and x86_64. I've tried to uninstall zstd from homebrew, and building universal zstd dylib from source instead. This fails as well, with ninja: error: '/opt/homebrew/lib/libzstd.dylib', needed by 'bin/llvm-min-tblgen', missing and no known rule to make it.

Another thread mentioned symlinking the universal dylib into the homebrew path. I do get past the original failure, but just end up hitting another zstd related failure later on -- dyld[19746]: Library not loaded: @rpath/libzstd.1.dylib.

What's the right way to provide cmake with the correct zstd dylib? Would that have to be done down in llvm-project?

I was able to get this resolved by uninstalling cmake through brew, and then reinstalling cmake directly into the system from a binary distribution, then installing command line support with...

sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install

After that, a clean build made it past llvm and swift, failing on a different issue.

My gut tells me that there's a way to point a homebrew cmake install at the desired system libraries, but I do not know cmake well enough to know how.