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.034171
First Submitted: 2018-12-05 13:56 (UTC)
Last Updated: 2024-04-17 08:17 (UTC)

Required by (2124)

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 .. 41 42 43 44 45 46 47 48 49 50 51 .. 70 Next › Last »

zan commented on 2015-12-19 20:13 (UTC)

Trying to build a debug mode to test some Mesa bugs and I'm getting: -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG - Failed CMake Error at tools/clang/tools/CMakeLists.txt:1 (create_subdirectory_options): Unknown CMake command "create_subdirectory_options". This function is defined in AddLLVM.cmake, but the build is not recognizing it. The other AUR repo llvm-debug gets past this stage fine but fails for its own reasons in the compile step.

kerberizer commented on 2015-12-16 21:51 (UTC)

Just FYI, the abi_tag patch seems to provoke a segmentation fault in Clang in certain cases. See the last comment here: http://reviews.llvm.org/D12834

kerberizer commented on 2015-12-13 12:33 (UTC)

[HEADS UP] Important updates I'll be pushing shortly three important updates: 1. A set of patches for Clang, which add support for the new GCC's abi_tag attribute. This should fix linking to libraries that provide interfaces based on the new dual ABI model. For a practical example of the issue, see this Debian bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=797917 2. `make all` will now be executed before `make ocaml_doc` as discussed here earlier. Please let me know if you encounter problems with this. 3. Any installed on the system LLVM OCaml bindings are now considered incompatible. Previously, if the OCaml bindings on the system were of the same version as the current build (which would happen pretty rarely though, except when doing instant rebuilds) the PKGBUILD wouldn't complain. I've had however a case when even the same version bindings caused a problem, and so decided it's better to play safe. In any case, and as always, building in a clean chroot is highly recommended, which would avoid such issues altogether.

kerberizer commented on 2015-12-11 15:21 (UTC)

[NOTICE] The binary repo is back online. I'm also aware of the dual ABI issue with Clang and will be looking into it. For further reference: * https://llvm.org/bugs/show_bug.cgi?id=23529 * http://reviews.llvm.org/D12834

kerberizer commented on 2015-12-10 20:22 (UTC)

I'm afraid the binary repo will be down for longer than I expected. I'll let you know once it's back on-line. Again, I'm really sorry for this inconvenience.

kerberizer commented on 2015-12-09 22:12 (UTC) (edited on 2015-12-09 22:13 (UTC) by kerberizer)

[NOTICE] Due to upstream link problems, the binary repo is currently unavailable. Unfortunately, at the moment no estimate on the time needed to fix the links can be given, but I expect the problem to be solved not later than 24 hours from now. Sorry for the inconvenience.

kerberizer commented on 2015-12-06 14:17 (UTC)

Could I please ask those of you who build the packages themselves to test the following very simple patch... - - - 8 < - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/PKGBUILD b/PKGBUILD index eac2328..e1c8456 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -155,6 +155,8 @@ build() { -DLLVM_BINUTILS_INCDIR:PATH=/usr/include \ "../${_pkgname}" + make + # Must run this target independently, or else docs/cmake_install.cmake will fail. # Also, we must check that there isn't an incompatible llvm-ocaml package installed, # or else the build will fail with "inconsistent assumptions over interface" errors. @@ -166,8 +168,6 @@ build() { exit 1 } make ocaml_doc - - make } package_llvm-svn() { - - - 8 < - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - When I took over the maintainership, make was failing unless the 'ocaml_doc' target had been processed in advance. However, this doesn't quite make sense and I suspect it must have been a transient problem. Several days ago I switched the targets on the system that builds the packages for the binary repo and everything seems to be working fine. In fact, a random error that had previously occurred with building documentation also vanished (which is what I expected and actually why I tested this in the first place). I'll appreciate your feedback, because there still might be some corner cases where the original problem occurs.

HyperArch commented on 2015-11-14 22:27 (UTC)

@kerberizer Thanks man, issue resolved. Your a king amongst men :)

kerberizer commented on 2015-11-14 19:53 (UTC)

[NOTICE] Yet another fix due to upstream changes in the Clang Static Analyzer (clang-analyzer-svn). The issue reported by @ronoverdrive should be solved now.

kerberizer commented on 2015-11-14 17:04 (UTC)

@ronoverdrive, thanks! There have again been changes upstream in the Clang Static Analyzer install logic. I'll look into it later this evening (UTC+2h). These incremental changes, some of which then also need fixing even upstream, are beginning to get on my nerves, to be honest. Sorry for the inconvenience.