Package Base Details: libc++

Git Clone URL: https://aur.archlinux.org/libc++.git (read-only, click to copy)
Submitter: WoefulDerelict
Maintainer: WoefulDerelict
Last Packager: WoefulDerelict
Votes: 248
Popularity: 2.12
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.

https://wiki.archlinux.org/index.php/Makepkg https://wiki.archlinux.org/index.php/Arch_User_Repository

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. https://wiki.archlinux.org/index.php/Arch_User_Repository

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: https://wiki.archlinux.org/index.php/DeveloperWiki: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: 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>

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. [https://www.archlinux.org/pacman/makepkg.8.html]

WoefulDerelict commented on 2017-08-10 15:17

hagabaka: Unfortunately I am unable to reproduce this via testing-x86_64-build. I'm not sure why it would be complaining that clang is broken but if the compiler isn't playing nice with the build system's test program it won't continue. My only suggestion would be to check that everything is up to date and that your clang/llvm packages are properly installed with pacman's -Qkk flags.

funilrys: It would appear you need to study the pinned comment. It contains a brief example of the command to fetch the keys at the bottom as well as links to documentation explaining source signatures and how to configure and use GnuPG.

xtrm0: The current release of LLVM, clang and libcxx/libc++ is version 4.0.1 [http://www.llvm.org/]. Version 5.0.0 isn't due for release until the 23rd of August. Details about source signatures and building packages containing them are contained in the pinned comment. Consult the documentation and try again.

funilrys commented on 2017-08-10 12:46

I personnaly get the following ...

:: Überprüfe Integrität von libc++,libc++abi...
==> Erstelle Paket: libc++ 4.0.1-1 (Do 10. Aug 14:45:30 CEST 2017)
==> Empfange Quellen...
-> llvm-4.0.1.src.tar.xz gefunden
-> llvm-4.0.1.src.tar.xz.sig gefunden
-> libcxx-4.0.1.src.tar.xz gefunden
-> libcxx-4.0.1.src.tar.xz.sig gefunden
-> libcxxabi-4.0.1.src.tar.xz gefunden
-> libcxxabi-4.0.1.src.tar.xz.sig gefunden
==> Überprüfe source Dateien mit sha512sums...
llvm-4.0.1.src.tar.xz ... Durchgelaufen
llvm-4.0.1.src.tar.xz.sig ... Übersprungen
libcxx-4.0.1.src.tar.xz ... Durchgelaufen
libcxx-4.0.1.src.tar.xz.sig ... Übersprungen
libcxxabi-4.0.1.src.tar.xz ... Durchgelaufen
libcxxabi-4.0.1.src.tar.xz.sig ... Übersprungen
==> Überprüfe Signaturen der Quell-Dateien mit gpg...
llvm-4.0.1.src.tar.xz ... FEHLGESCHLAGEN (Unbekannter öffentlicher Schlüssel 8F0871F202119294)
libcxx-4.0.1.src.tar.xz ... FEHLGESCHLAGEN (Unbekannter öffentlicher Schlüssel 8F0871F202119294)
libcxxabi-4.0.1.src.tar.xz ... FEHLGESCHLAGEN (Unbekannter öffentlicher Schlüssel 8F0871F202119294)
==> FEHLER: Eine oder mehrere PGP-Signaturen konnten nicht überprüft werden!

hagabaka commented on 2017-08-10 01:21

I'm on [testing] and I'm getting an error "clang-4.0: error: unknown argument: '-fvar-tracking-assignments'" soon after starting the build:

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

It fails with the following output:

Change Dir: /home/hagabaka/AUR/libc++/src/build/CMakeFiles/CMakeTmp



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

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

make[1]: Entering directory
'/home/hagabaka/PKGBUILDs/libc++/src/build/CMakeFiles/CMakeTmp'

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

/usr/lib/ccache/bin/clang -march=x86-64 -mtune=generic -O2 -pipe
-fstack-protector-strong -g -fvar-tracking-assignments -g
-fvar-tracking-assignments -o CMakeFiles/cmTC_61954.dir/testCCompiler.c.o
-c /home/hagabaka/AUR/libc++/src/build/CMakeFiles/CMakeTmp/testCCompiler.c

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

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

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

make[1]: Leaving directory
'/home/hagabaka/PKGBUILDs/libc++/src/build/CMakeFiles/CMakeTmp'

make: *** [Makefile:126: cmTC_61954/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!

WoefulDerelict commented on 2017-08-09 04:07

OrangeInk: It appears as though you have neglected to read some of the key portions of the documentation before your undertaking. If you consult the documentation you will notice there is an entry in the options array that affects the inclusion of static libraries in the finished package rather obviously designated 'staticlibs' [https://www.archlinux.org/pacman/PKGBUILD.5.html#_options_and_directives]. Further reading would have lead you to makepkg.conf where you can see that the default options include '!staticlibs' which is why they are not included in the final package even tho you explicitly built them. If you want to include the static libraries in your package you'll need to add the options array to your customized libc++ PKGBUILD with the appropriate override to change the behaviour. i.e. options=('staticlibs')

WoefulDerelict commented on 2017-08-09 03:40

squidman: I am unable to reproduce this issue in testing. I am perfectly capable of executing gpg --recv-keys on they key for the current release [Tom Stellard <tom@stellard.net> (.1 releases), https://pgp.mit.edu/pks/lookup?op=get&search=0x8F0871F202119294, 11E521D646982372EB577A1F8F0871F202119294] using the same fingerprint [8F0871F202119294]. I do not; however, make a habit of using a different keyserver than the default shipped with GPG [hkp://keys.gnupg.net] and have yet to encounter an issue where I was unable to receive a key I needed to verify the sources for a package.

OrangeInk commented on 2017-08-01 13:39

I'm trying to build a static version of libc++ (libc++.a) alongside with libc++.so.

I added -DLIBCXX_ENABLE_STATIC=On flag to "cmake" call and cxx_static flag to "make" call in "build()" function. My PKGBUILD is here: https://pastebin.com/sFHrUC4q

It's built properly and I can see libc++.a in src/build/lib/ folder.

When
make DESTDIR="${pkgdir}" install-libcxx
command runs (package_libc++() function) I see this output:
Scanning dependencies of target install-cxx
-- Install configuration: "Release"
-- Installing: /home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/libc++.so.1.0
-- Installing: /home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/libc++.so.1
-- Installing: /home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/libc++.so
-- Set runtime path of "/home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/libc++.so.1.0" to ""
-- Installing: /home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/libc++.a
-- Installing: /home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/libc++experimental.a

full output here: https://pastebin.com/11jt1i4h

So as you can see libc++.a is copying.
But after all I can't find this file in /home/user/.cache/pacaur/libc++/pkg/libc++/usr/lib/ or libc++-4.0.1-1-x86_64.pkg.tar.xz either, it just disappeared.

But if run
cd src/build/
make DESTDIR=pkg/libc++ install-libcxx
in terminal it successfully appears in the folder.

Any ideas?

WoefulDerelict commented on 2017-07-10 15:33

Plexcon: Please see the pinned post concerning source signature verification.

Plexcon commented on 2017-07-10 08:21

==> ERROR: ¡No se ha podido verificar alguna de las firmas PGP!

WoefulDerelict commented on 2017-06-28 02:11

foutrelis: If one parses the information presented properly, upstream has already addressed the issue. Additional overhead in the PKGBUILD to mask future regression seems excessive.

It appears the appropriate solution is for users to update to the current release.

foutrelis commented on 2017-06-28 01:52

FYI: https://bugs.archlinux.org/task/50254 — To ensure this doesn't break in the future you might consider explicitly enabling LIBCXX_ENABLE_ABI_LINKER_SCRIPT.