Package Details: libc++abi 5.0.0-1

Git Clone URL: https://aur.archlinux.org/libc++.git (read-only)
Package Base: libc++
Description: A new implementation of low level support for a standard C++ library
Upstream URL: http://libcxx.llvm.org/
Licenses: MIT, custom:University of Illinois/NCSA Open Source License
Submitter: WoefulDerelict
Maintainer: WoefulDerelict
Last Packager: WoefulDerelict
Votes: 61
Popularity: 20.578231
First Submitted: 2017-02-04 16:09
Last Updated: 2017-09-09 17:29

Pinned Comments

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 developer's located here: http://allanmcrae.com/2015/01/two-pgp-keyrings-for-package-management-in-arch-linux/

Instructions on importing keys from a keyserver and how to automate the retrieval process can be found in the Arch Linux wiki here: https://wiki.archlinux.org/index.php/GnuPG#Use_a_keyserver
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>

Latest Comments

chendaniely commented on 2017-09-13 20:58

@RobotUnderscore: it'll work if you run:

`gpg --recv-keys B6C8F98282B944E3B0D5C2530FC3042E345AD05D`

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().
Aborting...
==> 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().
Aborting...
==> 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:
http://allanmcrae.com/2015/01/two-pgp-keyrings-for-package-management-in-arch-linux/

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 [https://wiki.archlinux.org/index.php/GnuPG#Use_a_keyserver]. 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 :
https://makz.me/archlinux-makepkg-unknown-pgp-key/

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 http://releases.llvm.org/4.0.0/hans-gpg-key.asc.

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]

PKGBUILD :

validpgpkeys=(# Tom Stellard <tom@stellard.net> (.1 releases)
25| # https://pgp.mit.edu/pks/lookup?op=getsearch=0x8F0871F202119294
26| 11E521D646982372EB577A1F8F0871F202119294
27| # Hans Wennborg <hans@chromium.org> (.0 releases)
28| # http://releases.llvm.org/3.8.0/hans-gpg-key.asc
29| B6C8F98282B944E3B0D5C2530FC3042E345AD05D)
30|

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 https://lists.archlinux.org/pipermail/arch-general/2017-July/043893.html

All comments