Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

zig libc panics on macOS #10478

Closed
Jarred-Sumner opened this issue Jan 1, 2022 · 28 comments
Closed

zig libc panics on macOS #10478

Jarred-Sumner opened this issue Jan 1, 2022 · 28 comments
Labels
bug Observed behavior contradicts documented or intended behavior os-macos
Milestone

Comments

@Jarred-Sumner
Copy link
Contributor

Zig Version

0.10.0-dev.4870+be5130ec5

Steps to Reproduce

Run zig libc

Expected Behavior

Don't panic, maybe print a non-zero exit code

Actual Behavior

image

thread 28145757 panic: Darwin is handled separately via std.zig.system.darwin module
Unable to dump stack trace: debug info stripped
fish: Job 1, 'zig libc' terminated by signal SIGABRT (Abort)
@Jarred-Sumner Jarred-Sumner added the bug Observed behavior contradicts documented or intended behavior label Jan 1, 2022
@Vexu Vexu added this to the 0.10.0 milestone Jan 9, 2022
@jedisct1
Copy link
Contributor

Were you running a beta release on macOS by chance?

@haze
Copy link
Contributor

haze commented Jul 11, 2022

Were you running a beta release on macOS by chance?

I was when this was happening to me (but it turned out zig just didn’t support Ventura)

@jedisct1
Copy link
Contributor

Yep, this is because Zig doesn't include a copy of libSystem.tbd for that macOS version.

In order to use Zig on Ventura, #12080 is required as well as the following diff:

diff --git a/src/Compilation.zig b/src/Compilation.zig
index b00f13581..4e21245f4 100644
--- a/src/Compilation.zig
+++ b/src/Compilation.zig
@@ -4474,7 +4474,7 @@ fn detectLibCIncludeDirs(

     // If linking system libraries and targeting the native abi, default to
     // using the system libc installation.
-    if (link_system_libs and is_native_abi and !target.isMinGW()) {
+    if ((link_system_libs or target.isDarwin()) and is_native_abi and !target.isMinGW()) {
         if (target.isDarwin()) {
             return if (has_macos_sdk)
                 // For Darwin/macOS, we are all set with getDarwinSDK found earlier.

@andrewrk andrewrk modified the milestones: 0.10.0, 0.11.0 Sep 14, 2022
@anatol
Copy link

anatol commented Oct 25, 2022

I started seeing this issue after upgrading my computer to MacOSX 13.0 (Ventura)

@jedisct1
Copy link
Contributor

Can you try the macos-13 branch?

@anatol
Copy link

anatol commented Oct 25, 2022

@jedisct1 I tried to build macos-13 branch using instructions from https://github.com/ziglang/zig/wiki/Building-Zig-From-Source and stage3 fails for me with

[ 93%] Building CXX object CMakeFiles/zigstage1.dir/src/stage1/range_set.cpp.o
[ 94%] Building CXX object CMakeFiles/zigstage1.dir/src/stage1/softfloat_ext.cpp.o
[ 94%] Building CXX object CMakeFiles/zigstage1.dir/src/stage1/stage1.cpp.o
[ 95%] Building CXX object CMakeFiles/zigstage1.dir/src/stage1/target.cpp.o
[ 95%] Building CXX object CMakeFiles/zigstage1.dir/src/stage1/tokenizer.cpp.o
[ 96%] Building CXX object CMakeFiles/zigstage1.dir/src/stage1/util.cpp.o
[ 97%] Linking CXX static library zigcpp/libzigstage1.a
[ 97%] Built target zigstage1
[ 98%] Building CXX object CMakeFiles/zig1.dir/src/stage1/zig0.cpp.o
[ 98%] Linking CXX executable zig1
[ 98%] Built target zig1
[ 99%] Building stage2 object /Users/apomazau/sources/zig/build/zig2.o
[ 99%] Building CXX object CMakeFiles/zig2.dir/src/stage1/empty.cpp.o
[100%] Linking CXX executable zig2
[100%] Built target zig2
[100%] Building stage3
error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/s_tryPropagateNaNF128M.c:38:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/softfloat_state.c:37:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/f64_to_f16.c:38:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/s_addExtF80M.c:38:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/i32_to_f128M.c:37:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/ui32_to_f128M.c:37:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

error(compilation): clang failed with stderr: In file included from /Users/apomazau/sources/zig/deps/SoftFloat-3e/source/s_addF128M.c:38:
In file included from /Users/apomazau/sources/zig/lib/include/stdint.h:52:
In file included from /Users/apomazau/sources/zig/lib/libc/include/any-macos-any/stdint.h:52:
/Users/apomazau/sources/zig/lib/libc/include/any-macos-any/sys/_types.h:32:10: fatal error: 'sys/cdefs.h' file not found

@jedisct1
Copy link
Contributor

Can you git pull and try again?

@jedisct1
Copy link
Contributor

jedisct1 commented Oct 25, 2022

Also, Jakub has a PR for it: #13299

@anatol
Copy link

anatol commented Oct 25, 2022

Now macos-13 branch compiles and runs without any errors.

@andrewrk
Copy link
Member

Ventura support landed in d42a719

@ghigt
Copy link

ghigt commented Oct 28, 2022

Is there any chance to have this fix in a 0.9.2 to be able to run it on Ventura?

@andrewrk
Copy link
Member

Sorry, 0.9.2 is not planned.

@anatol
Copy link

anatol commented Oct 28, 2022

Then Homebrew formula needs to be patched explicitly. cc @carlocab

@kubkon could you please specify a minimum list of patches on top of 0.9.1 required for Ventura support?

@andrewrk
Copy link
Member

Instead of patching Zig I suggest to start passing -target native-macos.11 in your project. This will produce binaries that run on Big Sur, Monterey, and Ventura.

Alternately you can upgrade to Zig 0.10.0 which is to be released 4 days from now.

@carlocab
Copy link

Yes, waiting for the release of 0.10.0 sounds like a much better idea. Thanks!

@vjpr
Copy link

vjpr commented Nov 14, 2022

brew install zig is x86 running under Rosetta:

 file /usr/local/Cellar/zig/0.10.0/bin/zig
/usr/local/Cellar/zig/0.10.0/bin/zig: Mach-O 64-bit executable x86_64

@carlocab
Copy link

That's because you've installed Homebrew into /usr/local. Everything Homebrew installs in that prefix is built for x64 and runs in Rosetta on M1 macOS.

@vjpr
Copy link

vjpr commented Nov 14, 2022

Ah yes I remember dealing with this earlier. I was recently messing around with my .zshrc file and I must have preferenced the /usr/local over /opt/homebrew somehow.

@akgvn
Copy link

akgvn commented Dec 21, 2022

FYI I'm seeing this panic on Zig 0.10.0, downloaded with homebrew:

~ % zig version
0.10.0
~ % zig libc
thread 697244 panic: Darwin is handled separately via std.zig.system.darwin module
Unable to dump stack trace: debug info stripped
zsh: abort      zig libc

(on macOS Ventura 13.0.1, Macbook Air M1 2020)

@vjpr
Copy link

vjpr commented Dec 21, 2022

@akgvn What does which zig show?

@akgvn
Copy link

akgvn commented Dec 21, 2022

@vjpr

 ~ % which zig
/opt/homebrew/bin/zig
~ % file /opt/homebrew/bin/zig
/opt/homebrew/bin/zig: Mach-O 64-bit executable arm64
``

@carlocab
Copy link

@akgvn, what's the output of

brew config
brew doctor
brew info zig
cat "$(brew --prefix zig)/INSTALL_RECEIPT.json" | grep -E '(tap_git_head|os_version)'

?

@akgvn
Copy link

akgvn commented Dec 22, 2022

@carlocab Ran all those in order:

~ % brew config
HOMEBREW_VERSION: 3.6.16-2-gf679990
ORIGIN: https://github.com/Homebrew/brew
HEAD: f679990d7918d9f99d9c6c99b7bec504bc4088fe
Last commit: 2 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 8f1d26349bf051432c341946d2d8e33dfcf9770e
Core tap last commit: 27 hours ago
Core tap branch: master
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.10 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 14.0.0 build 1400
Git: 2.37.1 => /Library/Developer/CommandLineTools/usr/bin/git
Curl: 7.84.0 => /usr/bin/curl
macOS: 13.0.1-arm64
CLT: 14.2.0.0.1.1668646533
Xcode: N/A
Rosetta 2: false

~ % brew doctor
Your system is ready to brew.

~ % brew info zig
==> zig: stable 0.10.0 (bottled), HEAD
Programming language designed for robustness, optimality, and clarity
https://ziglang.org/
/opt/homebrew/Cellar/zig/0.10.0 (13,837 files, 362.1MB) *
  Poured from bottle on 2022-12-21 at 21:24:03
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/zig.rb
License: MIT
==> Dependencies
Build: cmake ✘, llvm ✔
Required: z3 ✔, zstd ✔
==> Requirements
Required: macOS >= 11 ✔
==> Options
--HEAD
	Install HEAD version
==> Analytics
install: 2,620 (30 days), 10,601 (90 days), 26,848 (365 days)
install-on-request: 2,393 (30 days), 9,717 (90 days), 24,535 (365 days)
build-error: 119 (30 days)

~ % cat "$(brew --prefix zig)/INSTALL_RECEIPT.json" | grep -E '(tap_git_head|os_version)'
    "tap_git_head": "fbda5f2fc575872ae3cba9e7e252b621fe1dce11",
    "os_version": "macOS 13",

@carlocab
Copy link

Yea, this seems to be a problem with Zig. I can reproduce this using the latest build from master at https://ziglang.org/builds/zig-macos-aarch64-0.11.0-dev.937+c9e3524d0.tar.xz.

❯ curl -fsSL https://ziglang.org/builds/zig-macos-aarch64-0.11.0-dev.937+c9e3524d0.tar.xz | tar -x
❯ ./zig-macos-aarch64-0.11.0-dev.937+c9e3524d0/zig libc
thread 9838929 panic: Darwin is handled separately via std.zig.system.darwin module
Unable to dump stack trace: debug info stripped
[1]    73171 abort      ./zig-macos-aarch64-0.11.0-dev.937+c9e3524d0/zig libc

I suggest opening a new issue (if there isn't already a related one open).

bors bot added a commit to tigerbeetle/tigerbeetle that referenced this issue Jan 12, 2023
364: VSR/Correctness: Preserve Canonical Headers r=sentientwaffle a=sentientwaffle

(Includes #359, to ensure `repair()` commits enough ops that the pipeline can't run out of space when the new primary has to play catch-up.)

Fixes 2 correctness bugs:
1. Don't Truncate Canonical DVC
2. Bump Primary view_normal Early

## Don't Truncate Canonical DVC

### Summary

Truncating a canonical DVC's headers can fork the log.

### VOPR Example

Consider a cluster with:

- Replica 2 is leading a view change (view=17).
- Replica 1 is participating in the view=17 view change.
- Replica 0 is partitioned.
- `pipeline_prepare_queue_max = 6`

The DVC quorum:

    2: on_do_view_change: replica=1 view_normal=15 op=38 commit_min=31
    2: on_do_view_change: replica=2 view_normal=14 op=33 commit_min=28

primary_set_log_from_do_view_change_messages():

  1. Replica 2's `op_canonical` is 28 (computed by `primary_op_canonical_max()`).
  3. Replica 1's DVC included headers 33,34,35,36,37,38. These were loaded into Replica 2's headers since Replica 1 has the canonical view.
  4. Near the end of `primary_set_log_from_do_view_change_messages()`, `do_view_change_op_max()` finds a hash break between op 32/33, and discards 33…38, forking the log.

It discarded the entire (canonical!) hash chain from replica 1! (In this case those ops were uncommitted, but that doesn't necessarily need to be true.) In any case, by discarding those ops we revert to our old (incorrect) op 29, which otherwise would have been repaired. We go on to commit the wrong op 29.

According to `do_view_change_op_max()`, the rationale for discarding those breaks (i.e. breaks which follow the primary's `op_canonical`) is:

    /// If there is a hash chain break, none of the headers from the canonical DVCs replaced
    /// the broken (leftover uncanonical) op.
    /// Removing these is necessary for correctness and liveness, to ensure that
    /// disconnected headers do not remain in place in lieu of gaps.

As the first sentence hints, passing more headers in the DVC would decrease the probability of this error, but that isn't an actual fix. (Aside: This bug was likely hidden until recently because it is becomes less probably for larger pipelines, and I have recently been heavily testing small pipelines.)

### Simplified Example

With `pipeline_prepare_queue_max=3`:

```
  replica  headers                    commit_min  view_normal
        0  (1a 2a 3a 4a 5a 6a 7a 8a)          8a            4 (partitioned)
        1   1a 2a 3a 4a 5a{6a 7a 8a}          5a            4
        2   1a 2a 3a 4b                       3a            2
```

Prior to the do_view_change_op_max() truncation, replica's 2 headers are:

```
        2   1a 2a 3a 4b 5a 6a 7a 8a
                      ↑ hash break
```

Per CTRL, we can only discard headers that are *definitely uncommitted*.
A gap/break in replica 1's 6a,7a,8a would be definitively uncommitted and this safe to discard.
A break before _any_ of the view_normal_canonical's DVC headers though _must_ be repaired.

## Bump Primary view_normal Early

### Background

The new primary picks (in `primary_set_log_from_do_view_change_messages()`) at least one "canonical view". This is the highest `view_normal` from any DVC in its quorum.
The canonical DVC(s) headers are called the view's "canonical headers". These headers help select the new log head.

If multiple replicas have the same `view_normal`, there may be multiple canonical DVCs.
However, canonical headers _must_ be unambiguous. More specifically:

  - Any particular DVC may have gaps (1a, 2a, 4a), but no hash breaks (1a, 2a, 4b).
  - DVCs with the same `view_normal` _must_ not conflict.

### Bug

*DVCs with the same `view_normal` _must_ not conflict.*

Currently they can conflict, though. The heart of this bug is that the `view_normal` updates at a different time than the headers, so there is an interval when do not correspond.

Consider the new primary during a view change:

  1. Primary (`R₀`) receives DVC quorum for view `V₀`. `R₀` replaces its log. `R₀` begins repair.
  2. (... primary repairs)
  3. `R₀` completes repair. `R₀` transitions to `status=normal`. `R₀` bumps `view_normal`. `R₀` sends out `start_view` messages.

If another view change occurs during step 2 (with new primary `R₁`), `R₀` will send a DVC with a `view_normal` from _before_ `V₀`, but with the headers from `V₀`. But another replica in the view change may _also_ send a DVC, with the same `view_normal`, but the actual (different) headers!

### Not So Normal

Possibly `view_normal` should be renamed.
- For backups, "view normal" is accurate.
- But for primaries that completed completed their DVC quorum but did _not_ complete repair, it is inaccurate. They never reach normal status, but still need to advertise as if they did, to match their headers.

Maybe `view_active`? `view_write`? `view_member`?

This issue isn't present in VRR because VRR's DVCs include the entire log, and assume that it can be replace atomically.

372: Node Client: Optional build target for postinstall script. r=sentientwaffle a=A-Mozeak

Hi there 👋🏾 

I made this change after trying to run the steps in https://github.com/interledger/rafiki/blob/main/README.md#environment-setup. (I'm on a 2019 Intel MacBook Pro, running MacOS 13.0.1 Ventura).

I was getting the following error when trying to `pnpm install` that package, and the same when `npm install`-ing in the node client in this package (on the `npm run build_lib` step of `"postinstall"`). 
```
thread 7274527 panic: Darwin is handled separately via std.zig.system.darwin module
```

I found [this solution](ziglang/zig#10478 (comment)) in Zig's repo, and then made the following changes (let me know if there is a better way to do this):
1) Extract the commands from the `build_lib` script in `src/clients/node/package.json` into their own shell script.
2) Conditionally set the `-target` flag for the `zig/zig build-lib` command in that script based on a passed-in `$ZIG_BUILD_TARGET` environment variable.

Now the install commands work for me by running, e.g.:
```
ZIG_BUILD_TARGET=native-macos.11 npm i
```

I ran into a different error when trying to set the version of Zig to 0.10.0 in `src/tigerbeetle/scripts/install_zig.sh`, so I didn't go too deep into that approach. Hope this is useful!

Co-authored-by: sentientwaffle <[email protected]>
Co-authored-by: Alexander Mozeak <[email protected]>
bors bot added a commit to tigerbeetle/tigerbeetle that referenced this issue Jan 18, 2023
372: Node Client: Optional build target for postinstall script. r=eatonphil a=A-Mozeak

Hi there 👋🏾 

I made this change after trying to run the steps in https://github.com/interledger/rafiki/blob/main/README.md#environment-setup. (I'm on a 2019 Intel MacBook Pro, running MacOS 13.0.1 Ventura).

I was getting the following error when trying to `pnpm install` that package, and the same when `npm install`-ing in the node client in this package (on the `npm run build_lib` step of `"postinstall"`). 
```
thread 7274527 panic: Darwin is handled separately via std.zig.system.darwin module
```

I found [this solution](ziglang/zig#10478 (comment)) in Zig's repo, and then made the following changes (let me know if there is a better way to do this):
1) Extract the commands from the `build_lib` script in `src/clients/node/package.json` into their own shell script.
2) Conditionally set the `-target` flag for the `zig/zig build-lib` command in that script based on a passed-in `$ZIG_BUILD_TARGET` environment variable.

Now the install commands work for me by running, e.g.:
```
ZIG_BUILD_TARGET=native-macos.11 npm i
```

I ran into a different error when trying to set the version of Zig to 0.10.0 in `src/tigerbeetle/scripts/install_zig.sh`, so I didn't go too deep into that approach. Hope this is useful!

Co-authored-by: Alexander Mozeak <[email protected]>
bors bot added a commit to tigerbeetle/tigerbeetle that referenced this issue Jan 27, 2023
372: Node Client: Optional build target for postinstall script. r=sentientwaffle a=A-Mozeak

Hi there 👋🏾 

I made this change after trying to run the steps in https://github.com/interledger/rafiki/blob/main/README.md#environment-setup. (I'm on a 2019 Intel MacBook Pro, running MacOS 13.0.1 Ventura).

I was getting the following error when trying to `pnpm install` that package, and the same when `npm install`-ing in the node client in this package (on the `npm run build_lib` step of `"postinstall"`). 
```
thread 7274527 panic: Darwin is handled separately via std.zig.system.darwin module
```

I found [this solution](ziglang/zig#10478 (comment)) in Zig's repo, and then made the following changes (let me know if there is a better way to do this):
1) Extract the commands from the `build_lib` script in `src/clients/node/package.json` into their own shell script.
2) Conditionally set the `-target` flag for the `zig/zig build-lib` command in that script based on a passed-in `$ZIG_BUILD_TARGET` environment variable.

Now the install commands work for me by running, e.g.:
```
ZIG_BUILD_TARGET=native-macos.11 npm i
```

I ran into a different error when trying to set the version of Zig to 0.10.0 in `src/tigerbeetle/scripts/install_zig.sh`, so I didn't go too deep into that approach. Hope this is useful!

Co-authored-by: Alexander Mozeak <[email protected]>
Co-authored-by: Phil Eaton <[email protected]>
@HtwoO
Copy link

HtwoO commented Sep 13, 2023

I'm seeing similar error on macOS 11.7.8 (20G1351)

$ zig libc
thread 5715000 panic: Darwin is handled separately via std.zig.system.darwin module
Unable to dump stack trace: debug info stripped
Abort trap: 6

$ uname -a
Darwin hostname.local 20.6.0 Darwin Kernel Version 20.6.0: Thu Jun  8 22:36:09 PDT 2023; root:xnu-7195.141.49.701.4~1/RELEASE_X86_64 x86_64

$ zig version
0.10.1

$ brew info zig
==> zig: stable 0.10.1 (bottled)
Programming language designed for robustness, optimality, and clarity
https://ziglang.org/
/usr/local/Cellar/zig/0.10.1 (13,841 files, 385.3MB) *
  Poured from bottle using the formulae.brew.sh API on 2023-01-30 at 08:42:31
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/z/zig.rb
License: MIT
==> Dependencies
Build: cmake ✔, llvm@15 ✘
Required: zstd ✔
==> Requirements
Required: macOS >= 11 (or Linux) ✔
==> Analytics
install: 1,940 (30 days), 3,787 (90 days), 6,644 (365 days)
install-on-request: 1,497 (30 days), 3,005 (90 days), 5,406 (365 days)
build-error: 18 (30 days)

$ cat /usr/local/opt/zig/INSTALL_RECEIPT.json | grep --extended-regexp '(tap_git_head|os_version)'
    "tap_git_head": "a02abf8819cbb0fbdf50701e17cfb7d56730dbac",
    "os_version": "macOS 11.7",

Is there something obvious I'm missing?

@kubkon
Copy link
Member

kubkon commented Sep 13, 2023

I'm seeing similar error on macOS 11.7.8 (20G1351)

$ zig libc
thread 5715000 panic: Darwin is handled separately via std.zig.system.darwin module
Unable to dump stack trace: debug info stripped
Abort trap: 6

$ uname -a
Darwin hostname.local 20.6.0 Darwin Kernel Version 20.6.0: Thu Jun  8 22:36:09 PDT 2023; root:xnu-7195.141.49.701.4~1/RELEASE_X86_64 x86_64

$ zig version
0.10.1

$ brew info zig
==> zig: stable 0.10.1 (bottled)
Programming language designed for robustness, optimality, and clarity
https://ziglang.org/
/usr/local/Cellar/zig/0.10.1 (13,841 files, 385.3MB) *
  Poured from bottle using the formulae.brew.sh API on 2023-01-30 at 08:42:31
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/z/zig.rb
License: MIT
==> Dependencies
Build: cmake ✔, llvm@15 ✘
Required: zstd ✔
==> Requirements
Required: macOS >= 11 (or Linux) ✔
==> Analytics
install: 1,940 (30 days), 3,787 (90 days), 6,644 (365 days)
install-on-request: 1,497 (30 days), 3,005 (90 days), 5,406 (365 days)
build-error: 18 (30 days)

$ cat /usr/local/opt/zig/INSTALL_RECEIPT.json | grep --extended-regexp '(tap_git_head|os_version)'
    "tap_git_head": "a02abf8819cbb0fbdf50701e17cfb7d56730dbac",
    "os_version": "macOS 11.7",

Is there something obvious I'm missing?

It's been fixed in Zig 0.11.

@HtwoO
Copy link

HtwoO commented Sep 13, 2023

Okay nice. I thought it was fixed in 0.10.0 since this issue has 0.10.0 in its milestone, and my system is somewhat different from other users seeing this error. So I think it could be something new and unrelated to aarch64 macOS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Observed behavior contradicts documented or intended behavior os-macos
Projects
None yet
Development

No branches or pull requests