Package Base Details: libc++

Git Clone URL: (read-only, click to copy)
Submitter: WoefulDerelict
Maintainer: WoefulDerelict
Last Packager: WoefulDerelict
Votes: 248
Popularity: 2.38
First Submitted: 2017-02-04 16:09
Last Updated: 2020-05-07 18:42

Pinned Comments

eschwartz commented on 2019-01-21 03:57

PSA: Due to repeated abuse, this package is now a ZERO-TOLERANCE ZONE for rules violations.

Hi people, sorry for the interruption if you're the majority of users just innocently doing your thing, if so, feel free to just move on. For the rest of you, this is your final reminder regarding the following points, which shall now be grounds for having your account suspended:

  • Thou shalt not complain about makepkg's validpgpkeys feature.

  • Thou shalt not complain about makepkg's check() feature.

  • Thou shalt not under any circumstances ever insult the maintainer for implementing said features.

This package is doing the correct thing, and there has been a great deal of pointless moaning and whining about it despite the pinned comments explaining why these complaints are not only null and void, but also ridiculous because they can already be disabled. This nagging stops now.

The banhammer is ready and waiting in case you still want to ignore all this on top of the Trusted User warning(s).

Alad commented on 2018-08-22 12:58

Holy shit guys. What's unclear about "AUR helpers are not supported"? Stop this incessant spam and learn how to use makepkg.

Any comments on AUR helper issues will be deleted from now on. Repeat offenders will have their accounts suspended.

WoefulDerelict commented on 2018-07-21 11:45

If you experience issues when using an AUR helper please try again using makepkg. AUR helpers are not supported here. The AUR article in the ArchWiki documents the prerequisites and supported process.

The test suite contains tests for multiple locales including: en_US.UTF-8, fr_FR.UTF-8, ru_RU.UTF-8, zh_CN.UTF-8, fr_CA.ISO8859-1 and cs_CZ.ISO8859-2. If a locale isn't present on the system the related tests will be marked as unsupported and skipped.

If you encounter issues when building with makepkg please attempt to build this in a clean chroot using using the appropriate devtools script. The Arch Linux DeveloperWiki has an article focused around building packages in a clean chroot which contains information on the devtools scripts and explains the process of building in a clean chroot:

There is an active community of users on IRC along with a vibrant Discord server and Forums should you require assistance.

Picking a fight with one of the Trusted Users is a terrible idea.

WoefulDerelict commented on 2017-02-05 03:42

This PKGBUILD verifies the authenticity of the source via PGP signatures which are not part of the Arch Linux keyring. In order to complete the process it is necessary to import the key(s) from the ‘validpgpkeys’ array into the user’s keyring before calling makepkg. There is a helpful article explaining this process by one of Arch Linux's developers located here:

Instructions on importing keys from a keyserver and how to automate the retrieval process can be found in the Arch Linux wiki here: This article also contains helpful information describing the installation of GnuPG, its configuration and usage.

Execute the following to import keys using gpg:

gpg --recv-keys <KEYID - See 'validpgpkeys' array in PKGBUILD>

The PGP signature check can be skipped by passing --skippgpcheck to makepkg.

The libc++ test suite can be skipped by passing --nocheck to makepkg.

Consult the makepkg manual page for a full list of options. []

Latest Comments

« First ‹ Previous ... 6 7 8 9 10 11 12 13 14 15 16 ... Next › Last »

kaketa commented on 2017-09-10 21:50

The second key works for me -> B6C8F98282B944E3B0D5C2530FC3042E345AD05D

RobotUnderscore commented on 2017-09-10 18:44

Why do I keep getting PGP key errors whenever I try updating from version 4.0.1-1 to 5.0.1-1?

==> Validating source files with sha512sums...
llvm-5.0.0.src.tar.xz ... Passed
llvm-5.0.0.src.tar.xz.sig ... Skipped
libcxx-5.0.0.src.tar.xz ... Passed
libcxx-5.0.0.src.tar.xz.sig ... Skipped
libcxxabi-5.0.0.src.tar.xz ... Passed
libcxxabi-5.0.0.src.tar.xz.sig ... Skipped
==> Verifying source file signatures with gpg...
llvm-5.0.0.src.tar.xz ... FAILED (unknown public key 0FC3042E345AD05D)
libcxx-5.0.0.src.tar.xz ... FAILED (unknown public key 0FC3042E345AD05D)
libcxxabi-5.0.0.src.tar.xz ... FAILED (unknown public key 0FC3042E345AD05D)
==> ERROR: One or more PGP signatures could not be verified!
==> ERROR: Makepkg was unable to build libc++.

piekay commented on 2017-09-08 00:42

In file included from /tmp/yaourt-tmp-arch/aur-libc++/src/llvm/projects/libcxx/include/ios:216:
/tmp/yaourt-tmp-arch/aur-libc++/src/llvm/projects/libcxx/include/__locale:39:11: fatal error:
'xlocale.h' file not found
# include <xlocale.h>
1 error generated.
make[3]: *** [projects/libcxx/lib/CMakeFiles/cxx_objects.dir/build.make:63: projects/libcxx/lib/CMakeFiles/cxx_objects.dir/__/src/algorithm.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:14174: projects/libcxx/lib/CMakeFiles/cxx_objects.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:14257: projects/libcxx/lib/CMakeFiles/cxx.dir/rule] Error 2
make: *** [Makefile:4203: cxx] Error 2
==> ERROR: A failure occurred in build().
==> ERROR: Makepkg was unable to build libc++.

fix this by running ln -s /usr/include/locale.h /usr/include/xlocale.h

Wyn commented on 2017-09-07 08:03

In file included from /tmp/yaourt-tmp-arch/aur-libc++/src/llvm/projects/libcxx/include/ios:216:
/tmp/yaourt-tmp-arch/aur-libc++/src/llvm/projects/libcxx/include/__locale:39:11: fatal error:
'xlocale.h' file not found
# include <xlocale.h>
1 error generated.
make[3]: *** [projects/libcxx/lib/CMakeFiles/cxx_objects.dir/build.make:63: projects/libcxx/lib/CMakeFiles/cxx_objects.dir/__/src/algorithm.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:14174: projects/libcxx/lib/CMakeFiles/cxx_objects.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:14257: projects/libcxx/lib/CMakeFiles/cxx.dir/rule] Error 2
make: *** [Makefile:4203: cxx] Error 2
==> ERROR: A failure occurred in build().
==> ERROR: Makepkg was unable to build libc++.

WoefulDerelict commented on 2017-08-27 16:27

zobi8225: The developer blog in the pinned post is a far better resource:

The presence of the key in the validpgpkeys array is all that should be necessary to denote trust. It is not necessary for the user to trust the key. So long as the key is present in the user's keyring makepkg will be able to verify the upstream signature on the source and continue.

There is a link to the Arch Wiki with instructions on configuring GnuPG in the pinned post []. It covers the majority of topics and issues one might experience including configuring a keyserver and setting up automatic retrieval of keys.

zobi8225 commented on 2017-08-27 16:04

Ok sorry, for all my post. I find the solution here :

WoefulDerelict commented on 2017-08-27 15:59

zobi8225: LLVM and its sub projects use a three digit version number. Any release ending in .0 would be signed using Hans Wennborg's key. Any release ending in .1 would be signed with Tom Stellard's key. As the current release is 4.0.1 and this PKGBUILD is attempting to verify the source of libcxx 4.0.1 it will be looking for Tom's key and not Hans's. Hans's key was used for libcxx 4.0.0 and there is a copy of it included with that release as well at

When possible GnuPG should be configured with a functioning keyserver so any key one needed could be fetched using --recv-keys or even automatically when they were needed.

zobi8225 commented on 2017-08-20 14:51

Hello, i got GPG bug, i think the key of llvm is outdated :
In PKGFILE, llvm key is for 3.8 but libc++ need llvm-4 ...

Error message :
==> Validation des fichiers source avec sha512sums...
llvm-4.0.1.src.tar.xz ... Réussite
llvm-4.0.1.src.tar.xz.sig ... Ignoré
libcxx-4.0.1.src.tar.xz ... Réussite
libcxx-4.0.1.src.tar.xz.sig ... Ignoré
libcxxabi-4.0.1.src.tar.xz ... Réussite
libcxxabi-4.0.1.src.tar.xz.sig ... Ignoré
==> Vérification des signatures des fichiers sources grâce à gpg...
llvm-4.0.1.src.tar.xz ... ÉCHEC
libcxx-4.0.1.src.tar.xz ... ÉCHEC
libcxxabi-4.0.1.src.tar.xz ... ÉCHEC
==> ERREUR : Une ou plusieurs signatures PGP n’ont pas pu être vérifiées.
==> ERREUR : Makepkg n'a pas pu construire libc++.
==> Relancer la compilation de libc++ ? [o/N]


validpgpkeys=(# Tom Stellard <> (.1 releases)
25| #
26| 11E521D646982372EB577A1F8F0871F202119294
27| # Hans Wennborg <> (.0 releases)
28| #
29| B6C8F98282B944E3B0D5C2530FC3042E345AD05D)

rican-linux commented on 2017-08-16 06:03

I am getting the following error when trying to build.

Building C object CMakeFiles/cmTC_05128.dir/testCCompiler.c.o
/usr/bin/clang -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -o CMakeFiles/cmTC_05128.dir/testCCompiler.c.o -c /home/rican-linux/.cache/pacaur/libc++/src/build/CMakeFiles/CMakeTmp/testCCompiler.c
clang-6.0: error: unknown argument: '-fno-plt'

this is similar to what was reported here

WhatTheBuck commented on 2017-08-15 02:40

Errors when trying to build with clang:

-- Check for working C compiler: /usr/bin/clang -- broken
CMake Error at /usr/share/cmake-3.8/Modules/CMakeTestCCompiler.cmake:51 (message):
The C compiler "/usr/bin/clang" is not able to compile a simple test

It fails with the following output:

Change Dir: /home/bucks/.cache/pacaur/libc++/src/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_8c223/fast"

/usr/bin/make -f CMakeFiles/cmTC_8c223.dir/build.make

make[1]: Entering directory

Building C object CMakeFiles/cmTC_8c223.dir/testCCompiler.c.o

/usr/bin/clang -march=x86-64 -mtune=generic -O2 -pipe
-fstack-protector-strong -g -fvar-tracking-assignments -o
CMakeFiles/cmTC_8c223.dir/testCCompiler.c.o -c

clang-4.0: error: unknown argument: '-fvar-tracking-assignments'

make[1]: *** [CMakeFiles/cmTC_8c223.dir/build.make:66:
CMakeFiles/cmTC_8c223.dir/testCCompiler.c.o] Error 1

make[1]: Leaving directory

make: *** [Makefile:126: cmTC_8c223/fast] Error 2

CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt:47 (project)

-- Configuring incomplete, errors occurred!