Package Details: llvm-libs-git 13.0.0_r387925.7e71823f1deb-1

Git Clone URL: https://aur.archlinux.org/llvm-git.git (read-only, click to copy)
Package Base: llvm-git
Description: runtime libraries for llvm-git
Upstream URL: https://llvm.org/
Keywords: clang git lld lldb llvm polly
Licenses: custom:Apache 2.0 with LLVM Exception
Conflicts: llvm-libs
Provides: aur-llvm-libs-git, llvm-libs
Submitter: yurikoles
Maintainer: Lone_Wolf (rjahanbakhshi)
Last Packager: rjahanbakhshi
Votes: 113
Popularity: 0.172539
First Submitted: 2018-12-05 13:56
Last Updated: 2021-05-11 11:53

Required by (76)

Sources (2)

Pinned Comments

Lone_Wolf commented on 2020-08-22 12:18

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

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 ... Next › Last »

rjahanbakhshi commented on 2021-05-11 09:38

Thanks for the clarification Lone_Wolf. Since it's not been used in the official llvm PKGBUILD, I'm going to remove it here as well.

Lone_Wolf commented on 2021-05-11 09:24

Technically the elements in PKGBUILD source array have a syntax of file::url .

url syntax is protocol://some-string-understood-by-the-protocol . Incase there's no protocol, makepkg currently expects the file to be present in the folder the PKGBUILD is in .

There are indeed package maintainers that use local://somefile to indicate users need to provide somefile themselves.

local:// is however an undocumented protocol which meaning can only be determined from makepkg / pacman sourcecode.

When to use it is a matter of style.

If I remember correctly I used it in this PKGBUILD to make sure users that downloaded just the PKGBUILD got a distinct error message when trying to build it.

(yes, such people DO exist).

rjahanbakhshi, it's your call if local:// stays in the PKGBUILD or not.

rjahanbakhshi commented on 2021-05-11 08:56

Yes, local://llvm-config.h is used but the file exists next to PKGBUILD so the user doesn't have to put it there.

But you're right. local:// is not necessary here. I'll update the PKGBUILD to simply use llvm-config.h instead of local://llvm-config.h

FWIW, using local:// scheme doesn't have any negative consequences, at least in the context of makepkg.

Based on https://wiki.archlinux.org/title/Nonfree_applications_package_guidelines

"In case you use the local:// scheme in a source array, makepkg behaves as though no scheme were specified, and the file must be manually placed in the same directory as the PKGBUILD."

FabioLolix commented on 2021-05-10 20:29

At the moment is being used local://llvm-config.h instead of simply llvm-config.h

local:// is used when the source file need to be provided by the user (like for Cisco packettracer)

rjahanbakhshi commented on 2021-05-10 20:23

@FabioLolix,

llvm-config.h resides in the root, next to the PKGBUILD file. It will be copied during the build and will be installed into /usr/include/llvm/Config/llvm-config.h

Note that llvm-config.h only includes the correct config file which is either llvm-config-32.h or llvm-config-64.h

FabioLolix commented on 2021-05-10 18:50

Hello, one where should get llvm-config.h?

Lone_Wolf commented on 2021-04-05 10:33

Build failure confirmed, working on it.

Thaodan commented on 2021-04-04 23:22

https://bugs.llvm.org/show_bug.cgi?id=49818

feng commented on 2021-02-18 08:08

@Lone_Wolf Now it works. Thank you very much.

Lone_Wolf commented on 2021-02-16 20:00

Uploaded corrected version, please try it.

NOTE : this package conflicts with official llvm , llvm-libs , clang, compiler-rt etc.

If you have applications (f.e. blender & qtcreator) that need those you will have to rebuild such applications against this package.