Package Details: llvm-minimal-git 18.0.0_r479739.cd6022916bff-1

Git Clone URL: (read-only, click to copy)
Package Base: llvm-minimal-git
Description: Collection of modular and reusable compiler and toolchain technologies
Upstream URL:
Licenses: custom:Apache 2.0 with LLVM Exception
Conflicts: llvm
Provides: llvm
Submitter: Lone_Wolf
Maintainer: Lone_Wolf
Last Packager: Lone_Wolf
Votes: 5
Popularity: 0.98
First Submitted: 2019-05-14 19:32 (UTC)
Last Updated: 2023-11-04 12:46 (UTC)

Dependencies (13)

Required by (525)

Sources (2)

Pinned Comments

Lone_Wolf commented on 2022-11-02 11:39 (UTC)

During building you may encounter lots of coredumps, slowing build down or even dramatically reducing the responsiveness of your system.

See for solutions/workarounds .

Lone_Wolf commented on 2020-08-22 12:30 (UTC) (edited on 2020-08-22 12:31 (UTC) by Lone_Wolf)

Archlinux currently has 3 llvm git implementations

  1. this package

    • see other pinned comments for details
  2. llvm-git

    • 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
    • binary versions in chaotic aur unofficial repository
  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-08-25 12:39 (UTC) (edited on 2021-01-30 21:15 (UTC) by Lone_Wolf)

Why does this package exist ?

Llvm & aur llvm-git are intended to provide a full development environment of llvm/clang suite that can replace eachother completely (aur llvm-git adds some xtra functionality)

llvm-minimal-git is a stripped-down llvm trunk build with these goals :

  • llvm-libs-minimal-git must coexist with stable llvm-libs
  • provide what's needed for mesa trunk (it's a hard dependency for mesa-minimal-git and a possible dependeny for mesa-git)
  • provide basic llvm/clang compiler functionality on x86-64 architecture

Some of the things that are stripped out :

  • cross-compiling support
  • bindings for ocaml
  • bindings for go
  • lld , lldb and polly
  • documentation
  • examples
  • benchmarks

Maintainers (and users) should only depend on llvm-miminal-git after verifying it satisfies what they need.

Lone_Wolf commented on 2019-08-21 13:51 (UTC) (edited on 2022-11-02 11:36 (UTC) by Lone_Wolf)

When building this you are likely to encounter test failures.

Those that mention non-x86-64 and/or non-admgpu architectures are unimportant.

To prevent building abortions due to test failures, you can use --nocheck option of makepkg.

Latest Comments

1 2 3 4 5 6 7 Next › Last »

Lone_Wolf commented on 2023-11-30 09:10 (UTC)

ld.lld: error: Invalid record (Producer: 'LLVM18.0.0' Reader: 'LLVM 16.0.6')

It looks for the llvm18 linker but only finds the llvm16 linker.

This package builts llvm itself, also compiler-rt, clang-tools-extra and clang but not lld .

I could add lld, but that would cause file conflicts with repo lld.

Best option might be adding another sub package, how important is this for you ?

seqfault commented on 2023-11-30 00:57 (UTC)

can't compile linux-clear with that, any ideas?

Lone_Wolf commented on 2023-08-16 19:34 (UTC)

I managed to port the method used in repo packages to work with gnu make.

Build now goes a bit faster and binary size has been reduced a lot. see

Lone_Wolf commented on 2023-07-17 08:55 (UTC)

You are referring to /usr/bin/amdgpu-arch & /usr/bin/nvptx-arch ?

repo-llvm / clang doesn't appear to have those files, emscripten & rocm-llvm do but neither has a separate clang package.

Will have to think about this (and possibly reconsider using the ninja targets method to only build what's really used).

archdevlab commented on 2023-07-16 23:09 (UTC)

Hi you should move amdgpu-arch and nvptx-arch to clang package


Lone_Wolf commented on 2023-05-13 18:24 (UTC)

The method to reduce what is getting build uses `ninja -t targets' . That option appears to be exclusive to ninja, for now I'm skipping it.

The commands to split clang files do seem to work, unfortunately they complicate the PKGBUILD further.

I'm currently looking into building from snapshots to see if having separate (simple) PKGBUILDs for llvm, clang & spirv-llvm-translator is worth the effort.

archdevlab commented on 2023-04-24 05:36 (UTC)

Hi I forked your llvm-minimal-git package and split clang from llvm.

You can take a look :

I am running with this package for 1 week now with no issues

Lone_Wolf commented on 2023-04-22 12:57 (UTC)

I looked at repo packages requiring clang and/or llvm at runtime and found very few require llvm at runtime, much more require llvm at buildtime but not at runtime.

There appear to be benefits for llvm-minimal-git users to split clang from llvm. Doing that will complicate the package_llvm-minimal-git function further, not sure how bad that will be. Need to think about this more.

archdevlab commented on 2023-04-17 14:32 (UTC) (edited on 2023-04-17 14:34 (UTC) by archdevlab)

Hi I was looking at the git history of the main LLVM/CLANG PKGBUILDs and did not see that line. The clang14 PKGBUILD was uploaded sith that line when looking to the git history. I think they added that line to ship very minimal clang package, because when I look to the PKGBUILD clang14 dont even ship clang-tools-extra stuff. That line remove some analyze tools that I think is usefull for users.

My question is : Would it benefit users to trim down some tools and functionnality provided by clang in llvm-minimal-git?

Also thanks for your response about optimizing python stuff in clang! Thanks

Lone_Wolf commented on 2023-04-17 09:34 (UTC)

That line is not present in any llvm 15 PKGBUILDs, so the decision to remove those was reverted.

It helps to know that scan-build & scan-view are part of clang tools.

As for the optimize commands : They have never been used in llvm-minimal-git since it started in 2019 and no one has ever complained about it.

Both the archwiki python packaging guidelines and the python page don't mention those commands. Unless they're proven to be beneficial I treat them as a relic that was useful in the past but is no longer.