Package Details: clang90 9.0.1-2

Git Clone URL: https://aur.archlinux.org/clang90.git (read-only, click to copy)
Package Base: clang90
Description: C language family frontend for LLVM, version 9.0.1
Upstream URL: https://llvm.org/
Licenses: custom:University of Illinois/NCSA Open Source License
Submitter: andrew-wja
Maintainer: None
Last Packager: andrew-wja
Votes: 3
Popularity: 0.000002
First Submitted: 2020-04-08 09:46 (UTC)
Last Updated: 2020-05-21 16:15 (UTC)

Latest Comments

jcjgraf commented on 2021-11-18 09:56 (UTC)

I had the same problem with the missing limits. I have fixed by changin the PKGBUILD as follows:

build() {
  mkdir -p "$srcdir/llvm-$pkgver.src/build"
  cd "$srcdir/llvm-$pkgver.src/build"

  echo -e "#include <limits>\n$(cat ../utils/benchmark/src/benchmark_register.h)" > ../utils/benchmark/src/benchmark_register.h

  cmake .. \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/opt/llvm90 \
    -DLLVM_HOST_TRIPLE=$CHOST \
    -DLLVM_BUILD_LLVM_DYLIB=ON \
    -DLLVM_LINK_LLVM_DYLIB=ON \
    -DLLVM_INSTALL_UTILS=ON \
    -DLLVM_ENABLE_RTTI=ON \
    -DLLVM_ENABLE_FFI=ON \
    -DLLVM_BUILD_TESTS=OFF \
    -DLLVM_ENABLE_DOXYGEN=OFF \
    -DFFI_INCLUDE_DIR=$(pkg-config --variable=includedir libffi) \
    -DLLVM_BINUTILS_INCDIR=/usr/include
  make -Wno-dev all
}

DocMAX commented on 2021-07-22 09:32 (UTC) (edited on 2021-07-22 09:33 (UTC) by DocMAX)

couldn't compile "#include <limits>" needs to be added in benchmark_register.h

andrew-wja commented on 2020-10-09 10:03 (UTC)

@Soukyuu @avemilia LLVM is a very large codebase and there are lots of things that are not built or enabled even in the main llvm package in the [extra] repo. Sanitizers are one of those things (pacman -Ql llvm | grep san).

This package is supposed to provide an easy way to get an up-to-date LLVM 9.X.X series installation that is configured in the same way that the "official" package in [extra] is configured, so I've left everything that's turned off over there turned off here as well, sorry!

Fortunately building LLVM yourself is reasonably straightforward, and the official build documentation is reasonably good. (Actually I asked a clarification question on the LLVM discourse about this issue when I was initially building this package because I'm working on the sanitizers right now myself) https://llvm.discourse.group/t/missing-tests-for-sanitizers-in-llvm-10-0-0-and-potentially-more-versions/1383/3

avemilia commented on 2020-10-08 22:55 (UTC)

@Soukyuu you will need to add compiler-rt to LLVM_ENABLE_PROJECTS when configuring cmake. see the official build documentation.

Soukyuu commented on 2020-08-06 12:32 (UTC)

@andrew-wja, that is what I did and what is not working. The specified .a file also really doesn't exist. Maybe an additional cmake parameter has to be specified to build clang with TSAN support?

andrew-wja commented on 2020-08-06 12:28 (UTC)

@Soukyuu this package (and the other llvmXX packages maintained by other folks) are written so they do not interfere with the system installation of llvm from the main repos. For that reason, they are installed in /opt/, and you need to prefix your PATH with /opt/llvmXX/bin to use the llvmXX tools. It's not the most pleasant workaround, but pacman is not designed to handle simultaneous installations of the same software with different versions.

Soukyuu commented on 2020-08-06 06:41 (UTC)

Attempting to compile code with TSAN enabled results in

/usr/bin/ld: cannot find /opt/llvm90/lib/clang/9.0.1/lib/libclang_rt.tsan-x86_64.a: No such file or directory

I've temporarily added /opt/llvm90/bin in front of my path to override system-installed clang. Am I doing something wrong?

andrew-wja commented on 2020-05-21 14:45 (UTC)

Bumped to 9.0.1

yitzi commented on 2020-05-21 11:13 (UTC)

Can you bump to LLVM/CLANG 9.0.1? Looks like there are some fixes in the headers that ease compilation.