Package Base Details: llvm-git

Git Clone URL: https://aur.archlinux.org/llvm-git.git (read-only, click to copy)
Keywords: clang git lld lldb llvm polly
Submitter: yurikoles
Maintainer: rjahanbakhshi
Last Packager: rjahanbakhshi
Votes: 118
Popularity: 0.64
First Submitted: 2018-12-05 13:56 (UTC)
Last Updated: 2024-04-17 08:17 (UTC)

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 .. 15 16 17 18 19 20 21 22 23 24 25 .. 70 Next › Last »

Haxk20 commented on 2019-07-03 14:48 (UTC)

After long time not playing Elite Dangerous i launched it but all the shadows were white to my suprise. I got the issue pointed to LLVM. Last known build version from mesa-git repo is r319790.e8da65c698e.

nightuser commented on 2019-06-24 08:15 (UTC)

I tried building with LLVM_ENABLE_PROJECTS instead of moving directories around and it seemed ok. I didn't compare the two options of building the package since it takes ages to compile on my hardware.

QuartzDragon commented on 2019-06-15 11:58 (UTC)

Hey @Lone_Wolf, can you add llvm and llvm-git to the provides?

Every package depending on llvm wants to install llvm from the main repos, which prompted me to look. Adding llvm to provides shut them up. Adding llvm-git also wouldn't be a bad idea, just in-case some other AUR package demands a specific version for whatever random reason.

Griever commented on 2019-06-07 18:30 (UTC) (edited on 2019-06-07 18:38 (UTC) by Griever)

The provides are really starting to become a bit of a mess and maintenance burden. There's been, like, half a dozen switches on mesa-git?

Is there a reason mesa-git should depend on anything other than regular llvm provides? If so, is there really a reason to depend on anything other than *-git provides? AFAIK, mesa usually maintains compatibility with the last two stable LLVM releases.

Ideally, I believe this should only provide regular llvm, *-git and *-svn for compatibility with outdated packages such as libclc-git. Packages should never explicitly depend on *-git or unique packages unless they actually require it.

I truly appreciate you maintaining these packages, but it's becoming a pain to follow all of the changes and regular PKGBUILD breaks due to makedepend/provide changes. Apologies if there are legitimate reasons why all of this is required and can't be worked around any better.

yurikoles commented on 2019-06-02 20:40 (UTC)

@cj360 but you post it here instead of official LLVM bugzilla?

cj360 commented on 2019-06-02 20:34 (UTC)

Trying to build this package is failing for me with this hardware, Ryzen 1600 16gb ram. Here's some of the output the following http://ix.io/1KKY.

Lone_Wolf commented on 2019-05-26 13:38 (UTC) (edited on 2019-05-26 13:38 (UTC) by Lone_Wolf)

jpapadopoulos, this package is supposed to be built aginst python 3.

It does seem when both python2 & python3 are installed cmake uses python2 .

Add -D PYTHON_EXECUTABLE=/usr/bin/python \ to the cmake command and cmake will have to use python3 on archlinux.

I'll do the same in next version of the package.

jpapadopoulos commented on 2019-05-26 08:19 (UTC)

I had the following conflict: llvm-git: /usr/lib/python2.7/site-packages/six.py exists in filesystem (owned by python2-six) I fixed it editing the PKGBUILD to also remove the 2.7 version of six.py . Maybe this should always be removed and the python2-six added as a dep?

Lone_Wolf commented on 2019-05-23 13:20 (UTC) (edited on 2019-05-23 13:21 (UTC) by Lone_Wolf)

For the foreseeable future I'll continue being an active AUR maintainer. A compromise for mesa-git / lib32-git is now in place that allows default building against extra while making it easy to build against trunk master.

llvm-lw-git / compiler-rt-lw-git / clang-lw-git , lone_wolf-llvm-git / lone_wolf-compiler-rt-git / lone_wolf-clang-git and their lib32 variants are replaced by llvm-minimal-git + co and will be submitted for deletion / merge in 2 weeks or so.

That leaves 2 llvm trunk sets : llvm-git and llvm-minimal-git . I think llvm-git should continue to provide a full llvm/clang trunk enviornment with all the bells and whistles attached , while llvm-minimal-git is intended to provide a basic llvm/clang trunk withotu extras.

llvm-minimal-git should coexist with extra llvm , while llvm-git conflicts with it.

There are still some things I want to improve in llvm-git that should be finished sometime next month or july. I expect that end of july I'l be asking for someone to take over llvm-git while I'll be keeping llvm-minimal-git .

yurikoles commented on 2019-05-23 08:14 (UTC)

@Lone_Wolf, had you decided something about maintaining your AUR packages?