-
Notifications
You must be signed in to change notification settings - Fork 638
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
macOS x64 clang build failing #19591
Comments
With CMake 3.18+ (the minimum version set for IREE is 3.21), it should be sufficient to search for `Development.Module` instead of `Development`. We therefore skip searching for the latter as this might be the root for issue with the current macOS builds (see iree-org#19591).
With CMake 3.18+ (the minimum version set for IREE is 3.21), it should be sufficient to search for `Development.Module` instead of `Development`. We therefore skip searching for the latter as this might be the root for issue with the current macOS builds (see #19591).
Dropping Line 644 in e6ac016
does not resolve the problem. Furthermore, iree/build_tools/cmake/iree_llvm.cmake Line 166 in e6ac016
is already set if building with a bundled LLVM. |
I figured it out but I don't know what the right solution is yet; TL;DR we are in fact missing a symbol. Upstream has these The reason this doesn't fail upstream is because There are couple of fixes:
I suppose it's 4 now to unblock and then 1 upstream. |
IREE doesn't include |
Thanks Maks! I would vote for 4 until we get possibly get option 1 or 2 later. |
Ugh. 4 is fine for now. Thanks for the triage |
I'm also fine with #3. It is pretty obnoxious when the build passes but all tests fail on a missing symbol, but whatever works. One thing that other projects do: use the nanobind stub generator as part of the build. That has the byproduct of loading the built library, causing linkage issues to be surfaced at build time. That's probably the most hands off was to do it that will require the least intervention over time. |
Cherry-picks llvm/llvm-project@78f0447 on top of iree-org#19600, which fixes the macOS build (see iree-org#19591).
Just cherry-picking and applying the fix on top of your current LLVM integrate (branch iree-org/llvm-project: integrate/20250103+nanobind-fix) does not make the CI pass (Run 12630160413). Reverting the nanobind related upstream changes does (PR #19605, branch iree-org/llvm-project: integrate/20250103+nanobind-reverts, Run 12621186146). Thus the upstream fix either relies on some intermediate patched which I missed to cherry-pick or this might need more work. |
Similar to #354, we're approaching our 3.1.0 release across all IREE packages (iree-org/iree#19192), so testing closer to HEAD. Changes needed: * Update `FlatSymbolRefAttr` usage, similar to nod-ai/shark-ai#732 * Allow the "Test Build Release" workflow to skip failed experimental release downloads while IREE's macOS compiler release builds are broken (iree-org/iree#19591) Commit range: iree-org/iree@iree-3.1.0rc20241220...iree-3.1.0rc20250103
Just a heads up (because I've been pulling my hair out for hours somewhere else about this;
and what will happen is you'll get the weirdest
because the correct flag on linux is Infuriatingly they mean the exact opposite things on the platforms: maclld
linuxlld
ld
|
The
CI - macOS x64 clang
workflow started failing when scheduled for commit f1e1866 (build log https://github.com/iree-org/iree/actions/runs/12514308966) when linkingcompiler/bindings/python/iree/compiler/_mlir_libs/_mlir.cpython-311-darwin.so
:The integrate commit f1e1866 updates LLVM to llvm/llvm-project@b135922. This includes llvm/llvm-project@b56d1ec with ports the Python core code to nanobind. The build only fails for macOS but passes for other platforms.
Till now, IREE's compiler bindings are build with pybind11. Porting IREE's compiler bindings from pybind11 to nanobind (PR #19580), the following (additional) targets fail for macOS which reference
_PyClassMethod_New
:IREECompilerDialectsModule.cpp.o
DialectGPU.cpp.o
IRCore.cpp.o
DialectPDL.cpp.o
DialectLLVM.cpp.o
DialectTransform.cpp.o
Upstream macOS is several builds seem to pass, see for example https://github.com/makslevental/mlir-wheels/actions/runs/12565899455 or https://github.com/llvm/eudsl/actions/runs/12576273972/job/35052215749.
Errors (https://github.com/iree-org/iree/actions/runs/12583361482/job/35070746468) for PR #19580:
The text was updated successfully, but these errors were encountered: