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: 116
Popularity: 0.189878
First Submitted: 2018-12-05 13:56 (UTC)
Last Updated: 2022-08-14 10:11 (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 .. 5 6 7 8 9 10 11 12 13 14 15 .. 66 Next › Last »

shoober420 commented on 2020-08-22 02:13 (UTC)

So llvm-git will conflict with llvm, but llvm-libs will not conflict with llvm-libs-git.

Lone_Wolf commented on 2020-08-19 19:25 (UTC) (edited on 2020-08-19 19:28 (UTC) by Lone_Wolf)

That doesn't make sense.

both llvm-libs-git and llvm-libs have /usr/lib/LLVMgold.so and should give a file conflict upon installing.

llvm-git has a hard dependency on llvm-libs-git which should result in a conflict with llvm-libs also.

Assuming you have llvm-libs-git installed now, try to install llvm-libs and post the terminal output, relevant part of pacman.log and your pacman.conf .

Edit : lib32-llvm-libs-git uses the same logic, for troubleshooting we'll focus on the 64-bit package.

shoober420 commented on 2020-08-19 17:41 (UTC)

I’m not sure why, but this package does not conflict with the llvm-libs package in the official repository. I’m able to have both installed simultaneously. I’m for certain this is not intended. I have to manually remove llvm-libs.

Lone_Wolf commented on 2020-08-05 13:35 (UTC)

@ johngalt : looking into it, LLVM_POLLY_LINK_INTO_TOOLS was supposed to be a temp fix anyway.

@ Can221-ParOS

The very best way to avoid ocaml issues is to build in a clean chroot environment, https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_clean_chroot

Failure during tests is rather common for this package, use makepkg --nocheck option to skip them completely.

Do you need the full compiler environment or would https://aur.archlinux.org/packages/llvm-minimal-git/ be enough for your purpose ?

Can221-ParOS commented on 2020-08-03 02:51 (UTC)

Ive tried to get this to work a few different ways now, but it always fails on either the ocaml_doc build or one of the checks. This combined with the rather long compile time has me flustered

johngalt commented on 2020-07-22 15:07 (UTC) (edited on 2020-07-22 19:11 (UTC) by johngalt)

LLVM_POLLY_LINK_INTO_TOOLS should be ON not OFF for polly support now.

Lone_Wolf commented on 2020-06-26 15:17 (UTC)

Just build and got no polly related erorrs, only clang related test failures.

Please try again and post full logs somewhere if you still have the error .

sorice1123 commented on 2020-06-26 00:37 (UTC) (edited on 2020-06-26 01:34 (UTC) by sorice1123)

I'm running into this error:

FAILED: tools/polly/lib/CMakeFiles/obj.Polly.dir/Transform/ScopInliner.cpp.o 
/usr/bin/c++  -DHAS_LIBCUDART -DHAS_LIBOPENCL -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Itools/polly/lib -I/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib -Itools/polly/include -I/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/External -I/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/External/pet/include -I/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/External/isl/include -Itools/polly/lib/External/isl/include -I/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/include -I/usr/include/libxml2 -Iinclude -I/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/llvm/include -I/opt/cuda/include -D_FORTIFY_SOURCE=2 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -D_FORTIFY_SOURCE=2 -fPIC -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-maybe-uninitialized -Wno-class-memaccess -Wno-redundant-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wno-comment -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings -fno-exceptions -fno-rtti -O3 -DNDEBUG    -fno-exceptions -std=c++14 -MD -MT tools/polly/lib/CMakeFiles/obj.Polly.dir/Transform/ScopInliner.cpp.o -MF tools/polly/lib/CMakeFiles/obj.Polly.dir/Transform/ScopInliner.cpp.o.d -o tools/polly/lib/CMakeFiles/obj.Polly.dir/Transform/ScopInliner.cpp.o -c /home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/Transform/ScopInliner.cpp
/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/Transform/ScopInliner.cpp: In member function ‘virtual bool {anonymous}::ScopInliner::runOnSCC(llvm::CallGraphSCC&)’:
/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/Transform/ScopInliner.cpp:56:33: error: invalid use of incomplete type ‘class llvm::CallGraphNode’
   56 |     Function *F = (*SCC.begin())->getFunction();
      |                                 ^~
In file included from /home/cwl_ws/aur_builds/llvm-git/src/llvm-project/polly/lib/Transform/ScopInliner.cpp:18:
/home/cwl_ws/aur_builds/llvm-git/src/llvm-project/llvm/include/llvm/Analysis/CallGraphSCCPass.h:30:7: note: forward declaration of ‘class llvm::CallGraphNode’
   30 | class CallGraphNode;
      |       ^~~~~~~~~~~~~
[175/1131] Building CXX object tools/lld/ELF/CMakeFiles/lldELF.dir/SyntheticSections.cpp.o

Any idea how to solve this?

EDIT: NVM, I switched to an earlier commit and the error is gone.

Lone_Wolf commented on 2020-06-07 23:10 (UTC)

Thx Sinistar.

I was looking into adding python-psutil as checkdepend and had noticed time spend in check() had increased a lot but not figured out the reason yet.