macos: try auto-detecting the SDK when building on Apple for Apple
This patch tweaks Zig's behavior to prefer native SDK when compiling on an Apple platform for an Apple platform, if available. This also includes the build.zig code path in main.zig which now auto-detects the presence of native SDK when compiling on an Apple platform.
The latter was a surprise for me as I blindly assumed we use the same code path for build-exe/build-lib/cc etc. as for zig build but the latter has its own, vastly simplified Compilation struct. If we are to support beta macOS releases out-of-the-box without the necessity to patch Zig up, we need to patch both code paths: buildOutputType and cmdBuild. I was wondering if there perhaps is a better way to achieve this than this PR, but on the other hand this PR is the simplest way forward as far as I can see.
Closes #16118
I haven't been able to build stage3 zig on macOS Sonoma just yet; I get this error when building;
$ cmake -G Ninja -B build -DCMAKE_PREFIX_PATH='/opt/llvm/16.0.1/;/opt/pkg/' -DCMAKE_BUILD_TYPE=ReleaseWithDebInfo
$ samu -j20 -C build install
samu: entering directory 'build'
[1/2] Building stage3
samu: job failed: cd /Users/haze/zig && /Users/haze/zig/build/zig2 build --prefix /Users/haze/zig/build/stage3 --zig-lib-dir /Users/haze/zig/lib -Dconfig_h=/Users/haze/zig/build/config.h -Denable-llvm -Doptimize=ReleaseFast -Dstrip -Dtarget=native -Dcpu=native -Dversion-string=0.11.0-dev.3736+2a910886e
error(link): undefined reference to symbol '_isatty'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_dup2'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_attr_destroy'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_getenv'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_writev'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_abort'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__dyld_image_count'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__exit'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_exit'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_attr_init'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '___ulock_wait2'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_fstat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_fstatat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_faccessat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_mkdirat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_openat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_unlinkat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_symlinkat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_renameat'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_futimens'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '___error'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_fchdir'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_chdir'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__dyld_get_image_header'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_threadid_np'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__tlv_bootstrap'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_munmap'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_mmap'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_bzero'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_environ'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_sigaction'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_join'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_posix_memalign'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_open'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_fcntl'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_poll'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '___stack_chk_fail'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_fork'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_lseek'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_os_unfair_lock_trylock'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_os_unfair_lock_unlock'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_flock'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_os_unfair_lock_lock'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_arc4random_buf'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_attr_setstacksize'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_attr_setguardsize'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_malloc_size'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_execve'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pwrite'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_write'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pthread_create'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_ftruncate'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pipe'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_clock_gettime'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_sysctlbyname'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__dyld_get_image_name'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_sendfile'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '___ulock_wake'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_free'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__dyld_get_image_vmaddr_slide'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '___stack_chk_guard'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_setreuid'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_waitpid'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_setregid'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_pread'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_read'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_msync'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_close$NOCANCEL'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '_wait4'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '___getdirentries64'
error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o'
error(link): undefined reference to symbol '__availability_version_check'
error(link): first referenced in '/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a(/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a.o)'
error(link): undefined reference to symbol '_sys_icache_invalidate'
error(link): first referenced in '/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a(/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a.o)'
error(link): undefined reference to symbol 'dyld_stub_binder'
error: UndefinedSymbolReference
samu: subcommand failed
Attempting to use zig2 on an example init-exe project results in the same error message.
I haven't been able to build stage3 zig on macOS Sonoma just yet; I get this error when building;
$ cmake -G Ninja -B build -DCMAKE_PREFIX_PATH='/opt/llvm/16.0.1/;/opt/pkg/' -DCMAKE_BUILD_TYPE=ReleaseWithDebInfo $ samu -j20 -C build install samu: entering directory 'build' [1/2] Building stage3 samu: job failed: cd /Users/haze/zig && /Users/haze/zig/build/zig2 build --prefix /Users/haze/zig/build/stage3 --zig-lib-dir /Users/haze/zig/lib -Dconfig_h=/Users/haze/zig/build/config.h -Denable-llvm -Doptimize=ReleaseFast -Dstrip -Dtarget=native -Dcpu=native -Dversion-string=0.11.0-dev.3736+2a910886e error(link): undefined reference to symbol '_isatty' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_dup2' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_attr_destroy' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_getenv' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_writev' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_abort' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__dyld_image_count' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__exit' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_exit' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_attr_init' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '___ulock_wait2' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_fstat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_fstatat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_faccessat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_mkdirat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_openat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_unlinkat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_symlinkat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_renameat' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_futimens' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '___error' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_fchdir' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_chdir' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__dyld_get_image_header' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_threadid_np' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__tlv_bootstrap' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_munmap' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_mmap' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_bzero' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_environ' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_sigaction' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_join' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_posix_memalign' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_open' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_fcntl' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_poll' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '___stack_chk_fail' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_fork' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_lseek' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_os_unfair_lock_trylock' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_os_unfair_lock_unlock' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_flock' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_os_unfair_lock_lock' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_arc4random_buf' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_attr_setstacksize' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_attr_setguardsize' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_malloc_size' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_execve' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pwrite' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_write' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pthread_create' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_ftruncate' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pipe' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_clock_gettime' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_sysctlbyname' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__dyld_get_image_name' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_sendfile' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '___ulock_wake' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_free' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__dyld_get_image_vmaddr_slide' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '___stack_chk_guard' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_setreuid' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_waitpid' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_setregid' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_pread' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_read' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_msync' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_close$NOCANCEL' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '_wait4' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '___getdirentries64' error(link): first referenced in '/Users/haze/zig/zig-cache/o/5c5681b3b424d5ecd0c1eb1c7e88cb9b/build.o' error(link): undefined reference to symbol '__availability_version_check' error(link): first referenced in '/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a(/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a.o)' error(link): undefined reference to symbol '_sys_icache_invalidate' error(link): first referenced in '/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a(/Users/haze/.cache/zig/o/ae5b8bbe07c38d4a9ef82cd52e4ea880/libcompiler_rt.a.o)' error(link): undefined reference to symbol 'dyld_stub_binder' error: UndefinedSymbolReference samu: subcommand failedAttempting to use
zig2on an exampleinit-exeproject results in the same error message.
Nice, this is a step forward - YAML parser (aka TAPI) parser is outdated. Would you mind filing an issue and would you mind sending me a copy of your libSystem.tbd?
That was my bad - the patch was wrong. Could try again @haze?
I think this detection logic should go inside detectLibCIncludeDirs in Compilation, where there is already similar detection logic for MSVC on Windows, glibc on Linux, etc.
I think this detection logic should go inside
detectLibCIncludeDirsin Compilation, where there is already similar detection logic for MSVC on Windows, glibc on Linux, etc.
Oh, that's a neat idea - lemme try that once we wrinkle out all failures on macOS 14 with @haze.
Superseded by #16212