Package Details: llvm-git 18.0.0_r479038.d16d149e3d96-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: 1.39
First Submitted: 2018-12-05 13:56 (UTC)
Last Updated: 2023-10-30 08:09 (UTC)

Required by (2036)

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

1 2 3 4 5 6 .. 69 Next › Last »

sir_randomuser commented on 2024-03-16 16:13 (UTC) (edited on 2024-03-16 16:18 (UTC) by sir_randomuser)

LLVM version has been moved to llvm-project/cmake/Modules/LLVMVersion.cmake upstream.

pkgver needs to be changed to work correctly.

New pkgver needs to be:

pkgver() {
    cd "$srcdir"/llvm-project/cmake/Modules

    # This will almost match the output of `llvm-config --version` when the
    # LLVM_APPEND_VC_REV cmake flag is turned on. The only difference is
    # dash being replaced with underscore because of Pacman requirements.
    local _pkgver=$(awk -F 'MAJOR |MINOR |PATCH |)' \
            'BEGIN { ORS="." ; i=0 } \
             /set\(LLVM_VERSION_/ { print $2 ; i++ ; if (i==2) ORS="" } \
             END { print "\n" }' \
             LLVMVersion.cmake)_r$(git rev-list --count HEAD).$(git rev-parse --short HEAD)
    echo "$_pkgver"
}

Niinu commented on 2024-03-08 18:49 (UTC) (edited on 2024-03-08 18:50 (UTC) by Niinu)

Shouldn't extra/python-pexpect be marked as a dependency?

-- Could NOT find Python module 'pexpect'
CMake Error at /home/user/.cache/yay/llvm-git/src/llvm-project/lldb/test/CMakeLists.txt:43 (message):
  Python module 'pexpect' not found.  Please install it via pip or via your
  operating system's package manager.  For a temporary workaround, use a
  version from the LLDB tree with `LLDB_TEST_USE_VENDOR_PACKAGES=ON`

AskAlice commented on 2024-02-22 11:14 (UTC) (edited on 2024-02-22 11:14 (UTC) by AskAlice)

llvm-git: /usr/bin/amdgpu-arch exists in filesystem (owned by clang)
llvm-git: /usr/bin/nvptx-arch exists in filesystem (owned by clang)

rjahanbakhshi commented on 2023-12-29 10:42 (UTC)

@mdupont,

Can you try to build it in a clean chroot and install the built package using pacman -U? Both convenience and classic ways should work.

https://wiki.archlinux.org/title/DeveloperWiki:Building_in_a_clean_chroot

mdupont commented on 2023-12-26 22:49 (UTC) (edited on 2023-12-26 22:51 (UTC) by mdupont)

Hello,

The build keeps failing with the following output:

FAILED: lib/Target/AMDGPU/AMDGPUGenCallingConv.inc /home/mdupont/llvm/llvm-git/src/_build/lib/Target/AMDGPU/AMDGPUGenCallingConv.inc 
cd /home/mdupont/llvm/llvm-git/src/_build && /home/mdupont/llvm/llvm-git/src/_build/bin/llvm-tblgen -gen-callingconv -I /home/mdupont/llvm/llvm-git/src/llvm-project/llvm/lib/Target/AMDGPU -I/home/mdupont/llvm/llvm-git/src/_build/include -I/home/mdupont/llvm/llvm-git/src/llvm-project/llvm/include -I /home/mdupont/llvm/llvm-git/src/llvm-project/llvm/lib/Target /home/mdupont/llvm/llvm-git/src/llvm-project/llvm/lib/Target/AMDGPU/AMDGPU.td --write-if-changed -o lib/Target/AMDGPU/AMDGPUGenCallingConv.inc -d lib/Target/AMDGPU/AMDGPUGenCallingConv.inc.d
[1684/8024] Building AMDGPUGenDisassemblerTables.inc...
FAILED: lib/Target/AMDGPU/AMDGPUGenDisassemblerTables.inc /home/mdupont/llvm/llvm-git/src/_build/lib/Target/AMDGPU/AMDGPUGenDisassemblerTables.inc 
cd /home/mdupont/llvm/llvm-git/src/_build && /home/mdupont/llvm/llvm-git/src/_build/bin/llvm-tblgen -gen-disassembler -I /home/mdupont/llvm/llvm-git/src/llvm-project/llvm/lib/Target/AMDGPU -I/home/mdupont/llvm/llvm-git/src/_build/include -I/home/mdupont/llvm/llvm-git/src/llvm-project/llvm/include -I /home/mdupont/llvm/llvm-git/src/llvm-project/llvm/lib/Target /home/mdupont/llvm/llvm-git/src/llvm-project/llvm/lib/Target/AMDGPU/AMDGPU.td --write-if-changed -o lib/Target/AMDGPU/AMDGPUGenDisassemblerTables.inc -d lib/Target/AMDGPU/AMDGPUGenDisassemblerTables.inc.d
[1697/8024] Building AMDGPUGenRegisterBank.inc...
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...

when running with makepkg -s --nocheck. It does not tell me exactly where the error comes from, so I am lost on how to tackle this myself. Apologies if this is a trivial issue. Any hints would be greatly appreciated!

GregTheMadMonk commented on 2023-12-22 23:12 (UTC)

Hello! How about adding an appropriate version of libc++ to this package (and maybe to llvm-libs)?

rjahanbakhshi commented on 2023-10-30 08:10 (UTC)

Hi @npour,

Thank you for reporting this. The dependency is added now.

npour commented on 2023-10-27 18:14 (UTC)

Missing dependency:

python-myst-parser

alex.henrie commented on 2023-06-23 06:20 (UTC)

Unless you have something like a terabyte of RAM, this package can only be built with the --nocheck option.