Package Base Details: llvm-git

Git Clone URL: (read-only, click to copy)
Keywords: clang git lld lldb llvm polly
Submitter: yurikoles
Maintainer: Lone_Wolf (rjahanbakhshi)
Last Packager: Lone_Wolf
Votes: 112
Popularity: 0.011654
First Submitted: 2018-12-05 13:56
Last Updated: 2021-08-16 11:18

Pinned Comments

Lone_Wolf commented on 2021-08-16 11:26

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

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

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.

remyoudompheng commented on 2012-04-07 17:13

Reuploaded with some fixes from official PKGBUILD.
More are probably needed.

Svenstaro commented on 2012-04-03 16:08

Fixed and updated to gcc 4.7.0.

randomize46 commented on 2012-04-03 06:26

Please, update PKGBUILD _gcc_ver=4.6.2 to _gcc_ver=4.6.3, because it tries to build a gcc before building clang actually

Svenstaro commented on 2012-02-18 02:49

I just built on another system and do not run into any issues either. Package here: commented on 2012-02-17 20:52

If anyone else is able to reproduce, please chime in. I certainly cannot produce Svenstaro's results without patching the PKGBUILD.

I have had an email asking me for the PKGBUILD, saying that the pastebin had expired (it seems alright again now), which suggests I'm not alone.

Svenstaro commented on 2012-02-16 06:57

The current package works without any trouble of finding the STL headers for me. Cannot reproduce. commented on 2012-02-12 07:27

For me, it was failing to find iostream. Eg, the following would fail:
#include <iostream>

int main()
std::cout << "Hello, world!\n";

$ clang++ test.cpp
test.cpp:1:10: fatal error: 'iostream' file not found
#include <iostream>
1 diagnostic generated.

Svenstaro commented on 2012-02-11 17:54

Can you give me a minimal example that fails? A Hello world works for me. commented on 2012-02-04 09:25

On my system, include paths were not working, so I have updated the PKGBUILD in this paste:
It uses the gcc executable to get the C++ include search paths, and passes them into cmake via -DC_INCLUDE_DIRS.
I hope others find this useful!

Note: A Clang change made in November 2011 stopped the older method of patching the InitHeaderSearch.cpp file from working on Linux and Windows systems, moving the responsibility to the Driver.

Svenstaro commented on 2011-11-07 19:29