-
Notifications
You must be signed in to change notification settings - Fork 729
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
Unable to open homebrew llvm's libclang shared library, missing symbol #1777
Comments
It seems to be an error on libclang itself :/ Does opening it from another C program work at all? |
Sorry I'm super tired ATM, can you be more specific as to what I'm supposed to open from another C program: libclang or bindgen or something else. And if at all possible a quick command to do so? |
Np, understandable :) Does the following work?
Replacing |
Yup:
I also checked compiling a few additional ways, which all give the same result:
|
Installing |
I can also add that I ran into the same problem, and @mojodna's solution worked for me as well.
To reproduce:
To solve:
|
I can confirm that on my machine (macOS 10.14.6), I see that the Homebrew-bottled llvm loses the referenced symbol when upgrading from LLVM 9 to LLVM 10. With llvm@9:
After upgrading to llvm@10 :
To me this looks like a libclang build issue, either by LLVM or by Homebrew. |
|
May be worth trying #1826. |
|
More investigation:
It looks like the symbol is defined in Also apparently the missing symbol changed. |
@CamJN, what happens if you try setting DYLD_INSERT_LIBRARIES=/usr/local/opt/llvm/lib/libLLVM.dylib cargo build |
|
Well, I am out of ideas, then :( |
Problem persists with bindgen v0.55.1. |
The the following combo of versions works:
|
Problem description
I'm using bindgen
0.53.2
and I installed llvm from homebrew, and pointed bindgen at it with the following, which has worked for me in the past.However, when I try and run cargo build (I'm using bindgen in
build.rs
), bindgen panics and complains that it cannot find the__ZTIN4llvm23MCAsmParserSemaCallbackE
symbol in/usr/local/opt/llvm@10/lib/libclang.dylib
, and that symbol is expected because of/Users/camdennarzt/.rustup/toolchains/stable-x86_64-apple-darwin/lib/libLLVM.dylib
.Input C Headers
I know that I'm not supposed to show a header with includes here, but I'm pretty sure that the header isn't the problem (I don't think bindgen gets that far).
Bindgen Invocation
Actual Results
Expected Results
No panic.
The text was updated successfully, but these errors were encountered: