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

Required by (2208)

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 .. 32 33 34 35 36 37 38 39 40 41 42 .. 70 Next › Last »

kerberizer commented on 2017-03-04 04:38 (UTC)

[NOTICE] A few changes: * lld (https://lld.llvm.org/) is now included in the llvm-svn package, thanks to hesiod@GitHub. If you think it's better for it to be in a separate package, please let me know. * The LLVM unit tests that have been failing since around early to mid-January have been disabled (I guess those of you who build the package on your own had already done that long time ago). This is now a properly recognized and 4.0.0 release blocker bug. More info/comments: https://github.com/kerberizer/llvm-svn/issues/12 and https://bugs.llvm.org//show_bug.cgi?id=31610. If you think you can help, don't hesitate to do it. * A somewhat cosmetic change: the packages should now include all the licenses that are included in the source distribution (well, technically not all, since some are referenced only as being included in specific header and other similar files and including them would be an overkill, I guess).

kerberizer commented on 2017-02-27 20:00 (UTC) (edited on 2017-02-27 21:11 (UTC) by kerberizer)

@WoefulDerelict, thank you very much for the notice! I'm actually fine with either solution, but one obvious benefit if libc++/abi becomes part of this PKGBUILD is that I'll be able to also provide binary packages from the llvm-svn repo that I maintain. Like it usually happens, the devil is in the details. As discussed on https://github.com/kerberizer/llvm-svn/pull/10, one important issue is whether to use GCC or Clang -- and which Clang too -- for building the library, which gets further complicated by the nature of the split packages. My experiments so far have shown that each compiler leads to different libcxx unit tests failing: 4 tests were failing with GCC vs 1 with Clang from extra. The second problem is exactly those failing tests. I indeed tend to be a perfectionist, but a failing unit test is usually not a good indication, perfectionist or not. I'd really like to solve or at least have a clear path to solving these issues before merging libc++/abi, and any help with this will be really appreciated. And speaking about help, I'll also be very grateful if people knowledgeable with YAML take a look at https://github.com/kerberizer/llvm-svn/issues/12, resp. https://bugs.llvm.org/show_bug.cgi?id=31610. I've already bisected the problem (at least on Arch), but more eyes and testing are needed to understand why this is (likely) failing only on certain distributions/systems. Edit: Wrongly referenced the issue rather than the pull request.

WoefulDerelict commented on 2017-02-27 19:02 (UTC)

brunocodutra stopped by libc++ [https://aur.archlinux.org/pkgbase/libc%2B%2B/] asking how I felt about maintaining an -svn variant of the split package. The user also referenced a discussion here: https://github.com/kerberizer/llvm-svn/issues/6 One is referencing this here to document the forthcoming work to include libc++-svn/libc++abi-svn in this split PKGBUILD transparently in the AUR in order to help prevent the appearance of PKGBUILD(s) that would block inclusion.

novenary commented on 2017-02-17 12:38 (UTC)

Yeah, I'm using this package for mesa-git as well, but I also use Dolphin. Thanks a lot!

kerberizer commented on 2017-02-15 19:34 (UTC)

@streetwalrus, thank you very much for your helpful report. My own use of LLVM is almost exclusively as a Mesa dependency and therefore I really appreciate such feedback. LLVMHello.so should now be installed by the llvm-libs-svn package.

novenary commented on 2017-02-15 10:51 (UTC) (edited on 2017-02-15 10:54 (UTC) by novenary)

Building dolphin-emu-git fails with the following error: ``` CMake Error at /usr/lib/cmake/llvm/LLVMExports.cmake:1158 (message): The imported target "LLVMHello" references the file "/usr/lib/LLVMHello.so" but this file does not exist. Possible reasons include: * The file was deleted, renamed, or moved to another location. * An install or uninstall procedure did not complete successfully. * The installation package was faulty and contained "/usr/lib/cmake/llvm/LLVMExports.cmake" but not all the files it references. Call Stack (most recent call first): /usr/lib64/cmake/llvm/LLVMConfig.cmake:215 (include) Source/Core/UICommon/CMakeLists.txt:13 (find_package) ``` Removing references to LLVMHello from /usr/lib/cmake/llvm/LLVMExports-release.cmake solves the problem. This is probably a new file that needs to be installed or left out of the build entirely. I'm running builds from the repo. The file seems to be present in the package from extra. Edit: the PKGBUILD from extra doesn't seem to explicitly install this file, maybe it was removed upstream and the cmake files weren't updated.

kerberizer commented on 2016-12-07 17:29 (UTC)

[NOTICE] python2-requests added as a build dependency, otherwise Sphinx fails when generating documentation with "pkg_resources.DistributionNotFound: The 'requests' distribution was not found and is required by Sphinx"

kerberizer commented on 2016-11-10 13:14 (UTC)

[IMPORTANT] Mesa again builds correctly with the latest {,lib32-}llvm-svn, so it's safe to update your LLVM packages. DON'T FORGET TO REBUILD MESA! NB: You might need this tiny patch to mesa-git's PKGBUILD, which I'm sure @Lone_Wolf will apply shortly. diff --git a/PKGBUILD b/PKGBUILD index 0a8836e..96d5c8d 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -168,7 +168,7 @@ package_mesa-vulkan-radeon-git() { conflicts=('vulkan-radeon') install -m755 -d ${pkgdir}/usr/share/vulkan/icd.d - mv -v ${srcdir}/fakeinstall/usr/share/vulkan/icd.d/radeon_icd.json ${pkgdir}/usr/share/vulkan/icd.d/ + mv -v ${srcdir}/fakeinstall/usr/share/vulkan/icd.d/radeon_icd.*.json ${pkgdir}/usr/share/vulkan/icd.d/ install -m755 -d ${pkgdir}/usr/lib mv -v ${srcdir}/fakeinstall/usr/lib/libvulkan_radeon.so ${pkgdir}/usr/lib/

kerberizer commented on 2016-11-07 19:50 (UTC) (edited on 2016-11-07 22:04 (UTC) by kerberizer)

[NOTICE] Update for the LLVM r286062 issue with Mesa is now in code review: https://patchwork.freedesktop.org/series/14932/ Edit: Updated the link.

kerberizer commented on 2016-11-07 14:45 (UTC)

[HEADS UP] LLVM r286062 breaks Mesa If you use llvm-svn with Mesa, particularly for the AMD open source driver, DO NOT upgrade LLVM to version >=r286062. Upgrading will not only break the existing driver, but will also prevent you from building Mesa altogether (in both cases there will be error messages related to missing LLVMAddFunctionAttr). If you have already upgraded to a version >=r286062, here are some possible solutions: 1. Don't restart X: everything should mostly keep running, since the older shared lib has already been loaded in memory. A fix for Mesa should emerge in the meantime, probably in a day or two at most. 2. Return to an older LLVM version: if you don't regularly clear /var/cache/pacman/pkg, you should be able to find there package versions earlier than r286062. 3. Switch to llvm/mesa from the official repositories. This may be somewhat tricky, depending on what exact packages you had installed. Try replacing as much as possible of the installed llvm-svn/mesa-git packages with their llvm/mesa counterparts. Remove the -svn/-git packages that don't have an equivalent 'provides' in the official repos. Of course, this might break some functionality for you. I'll also consider keeping older versions of the llvm-svn* packages in the binary repo as a backup. Ref: https://github.com/llvm-mirror/llvm/commit/4a6fc8bacf11d8066da72cf8481467167877ed16