[llvm-dev] Binary releases for versions 10 and 11 do not work on macOS 10.11.6

Philippe Blain via llvm-dev llvm-dev at lists.llvm.org
Tue Nov 17 15:57:03 PST 2020


Hello, 

I'm on macOS 10.11.6 and I've downloaded different versions of the
binary releases from https://releases.llvm.org/download.html.
Version 9.0.1 works correctly. However versions 10.0.0 and 11.0.0 
do not work; I think the system libc++ is too old:

```
$ ~/Downloads/clang+llvm-10.0.0-x86_64-apple-darwin/bin/clang --version
dyld: lazy symbol binding failed: Symbol not found: __ZNSt3__118shared_timed_mutexC1Ev
  Referenced from: /Users/Philippe/Downloads/clang+llvm-10.0.0-x86_64-apple-darwin/bin/clang
  Expected in: /usr/lib/libc++.1.dylib

dyld: Symbol not found: __ZNSt3__118shared_timed_mutexC1Ev
  Referenced from: /Users/Philippe/Downloads/clang+llvm-10.0.0-x86_64-apple-darwin/bin/clang
  Expected in: /usr/lib/libc++.1.dylib

Trace/BPT trap: 5
```

I tried using the system 'install_name_tool' to fix 
the rpath, but without success:

```
$ install_name_tool -change /usr/lib/libc++.1.dylib @rpath/libc++.1.dylib ~/Downloads/clang+llvm-10.0.0-x86_64-apple-darwin/bin/clang
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: object: /Users/Philippe/Downloads/clang+llvm-10.0.0-x86_64-apple-darwin/bin/clang malformed object (unknown load command 10)
```

I also tried the 'llvm-install-name-tool' that comes 
with the binary release (starting in version 10.0.0 apparently)
but I get the same "Symbol not found" error as above. Using 
'llvm-cxxfilt' from the working 9.0.1 download gives me:

```
$ ~/Downloads/clang+llvm-9.0.1-x86_64-apple-darwin/bin/llvm-cxxfilt --types __ZNSt3__118shared_timed_mutexC1Ev
std::__1::shared_timed_mutex::shared_timed_mutex()
```

Is there any way I can make these binaries work on my system ?
(I don't have the necessary space/memory needed to compile LLVM myself)....

Also, I tried to find the scripts that create these releases in the llvm monorepo 
but it did not find them. The page https://llvm.org/docs/ReleaseProcess.html talks
about 'utils/release' but this path does not exist in the monorepo...

Thanks and cheers,

Philippe.
P.S. I am not subscribed to this list, please CC me in the replies.


More information about the llvm-dev mailing list