Package Details: llvm-git 18.0.0_r484887.953ae94149f0-1

Git Clone URL: https://aur.archlinux.org/llvm-git.git (read-only, click to copy)
Package Base: llvm-git
Description: LLVM development version. includes clang and many other tools
Upstream URL: https://llvm.org/
Keywords: clang git lld lldb llvm polly
Licenses: custom:Apache 2.0 with LLVM Exception
Conflicts: clang, compiler-rt, lld, lldb, llvm, polly
Provides: aur-llvm-git, clang, clang-git, compiler-rt, compiler-rt-git, lld, lld-git, lldb, lldb-git, llvm, polly, polly-git
Submitter: yurikoles
Maintainer: rjahanbakhshi
Last Packager: rjahanbakhshi
Votes: 118
Popularity: 0.75
First Submitted: 2018-12-05 13:56 (UTC)
Last Updated: 2024-04-17 08:17 (UTC)

Required by (2051)

Sources (2)

Pinned Comments

Lone_Wolf commented on 2021-08-16 11:26 (UTC)

When you have this package installed applications that are built against repo-llvm/clang WILL fail unless they are rebuild against this package.

This includes QTCreator, kdevelop , mesa, intel-compute-runtime, gnome-builder to name a few.

Lone_Wolf commented on 2020-08-22 12:18 (UTC) (edited on 2021-02-06 12:51 (UTC) by Lone_Wolf)

Archlinux currently has 3 llvm git implementations

  1. This package

    • It aims to provide a full llvm/clang compiler environment for development purposes.
    • Supports cross-compiling , bindings for external stuff (python, ocaml etc) , and some things not in extra-llvm.
    • intended to be used with archlinux core,extra & community repos
    • CONFLICTS with extra llvm/clang packages
    • Currently there's no repo with binary versions
  2. llvm-minimal-git

    • focuses on providing stuff needed for AUR mesa-git. Doesn't support cross-compiling or any bindings for external stuff like ocaml & python.
    • intended to be used with archlinux core,extra & community repos
    • compatible with extra llvm/clang packages
    • no repo with binary versions
  3. packages created & maintained by Lordheavy, an arch developer

    • intended to be used with archlinux testing repos
    • sometimes has problems on systems where testing repos are disabled
    • uses same package structure as llvm/clang in official repos
    • source
    • binary versions in LordHeavys unoffical repo

Lone_Wolf commented on 2019-04-12 20:41 (UTC) (edited on 2019-12-16 22:45 (UTC) by Lone_Wolf)

I've looked good at clang-trunk , llvm-svn, repo llvm/clang packages and think this package is now on route to become a worthy successor to llvm-svn .

  • llvm-libs-git holds the runtime libraries.

    It conflicts with the repo llvm-libs package. This is the only way to make sure the llvm linker from git is used, and that's needed for a full dev environment.

  • llvm-git

    has llvm , clang, compiler-rt, ocaml & python bindings, polly , lld , lldb .


The Package now uses a new environment variable to make ninja behave, NINJAFLAGS. If you want to use it adjust the snippet below to your desired values and add it to makepkg.conf.

Incase you are satisfied with ninja defaults you don't need to do anything.

# Add to makepkg.conf
# limit ninja to 20 jobs
# requires special code in PKGBUILD
# see ninja --help for additonal options
NINJAFLAGS="-j20"

The check() function fails rather often, but I do suggest to build with them. If build fails due to test failure you can add --nocheck to skip the tests.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 .. 70 Next › Last »

Febbe commented on 2022-04-15 16:32 (UTC)

I have some wishes: Can you also add libc++? (-D LLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind") Can you enable LIBCXX_ENABLE_INCOMPLETE_FEATURES=ON

rjahanbakhshi commented on 2022-03-09 14:29 (UTC)

@lesfox

Can you post the error logs you're gettig here so I can look into it?

yurikoles commented on 2022-03-08 13:20 (UTC)

@lesfox

You need to install lib32-llvm-git in one command with install of llvm-git.

lesfox commented on 2022-03-08 10:56 (UTC)

Hi, when I installed llvm-git, my AMD GPU lib32-mesa driver depends on lib32-clang, llvm-git will report a conflict with lib32-clang, how should I solve it?

Lone_Wolf commented on 2022-02-21 20:39 (UTC) (edited on 2022-02-21 20:43 (UTC) by Lone_Wolf)

Don't change buildtype.

In my experience options=(debug strip) does a much better job then RelWithDebInfo for archlinux pacakges .

What tool is reporting those files as having references to $srcdir ?

@rossuna : python 3.11 hasn't been released yet, what system are you trying to build this on ?

weltio commented on 2022-02-21 19:43 (UTC) (edited on 2022-02-21 19:46 (UTC) by weltio)

I just tried to build as debug package with pkgoptions strip debug (and CMAKE_BUILD_TYPE=RelWithDebInfo). It creates an llvm-git-debug package which contains references to the build directory. That seems to be the case b.c. AS_FLAGS do not get -fdebug-prefix-map

The files in question:

build/llvm-git/src/llvm-project/compiler-rt/lib/asan/asan_rtl_x86_64.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/ashldi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/ashrdi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/divdi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/floatdidf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/floatdisf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/floatdixf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/floatundidf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/floatundisf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/floatundixf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/lshrdi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/moddi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/muldi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/udivdi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/i386/umoddi3.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/x86_64/floatundidf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/x86_64/floatundisf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/builtins/x86_64/floatundixf.S
build/llvm-git/src/llvm-project/compiler-rt/lib/orc/elfnix_tls.x86-64.S
build/llvm-git/src/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S
build/llvm-git/src/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S
build/llvm-git/src/llvm-project/compiler-rt/lib/tsan/rtl/tsan_rtl_amd64.S

Is there any chance to get that fixed in order to build a correct debug package?

rossuna commented on 2022-02-05 12:03 (UTC)

Hi there, I'm having a strange error during the compilation. Maybe someone can help me.

Could not find a relative path to sys.executable under sys.prefix
tried: /sbin/python3.11
realpath(sys.prefix): /usr
sys.prefix: /usr
-- Skipping FreeBSDKernel plugin due to missing libfbsdvmcore
CMake Error at /home/nardo/.cache/paru/clone/llvm-git/src/llvm-project   /lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt:7 (message):
LLDB_PYTHON_EXE_RELATIVE_PATH is not set.

Sinistar commented on 2022-02-01 01:24 (UTC)

I should also mention, at times I have had the LLDB check appear to be locked up, but will time out after a long period of time and continue, therefore I have disabled that check in my PKGBUILD.

rjahanbakhshi commented on 2022-01-31 14:04 (UTC)

@Sinistar,

Thanks for reporting the problem and the suggestion. I added a temporary workaround for the issue which I'll revert after it's resolved. As for the --ignore-fail suggestion, since these tests are failing quite often, I've been wanting to disable them by default. I updated the PKGBUILD with your suggested flags. This way the package build won't fail, meanwhile, the tests will run and those who are interested can see the results in the logs at least.

Sinistar commented on 2022-01-30 22:00 (UTC) (edited on 2022-01-30 22:03 (UTC) by Sinistar)

I am sure this will get fixed but currently ocaml docs are ending up in /usr/share/doc/LLVM/llvm/ocaml-html and breaks the package build.

also, you might want to add

-D LLVM_LIT_ARGS="-sv --ignore-fail"

to the config, -sv is default and the --ignore-fail will allow the check to complete successfully, you will still see the failures.