Package Details: libgccjit 11.1.0-1

Git Clone URL: https://aur.archlinux.org/libgccjit.git (read-only, click to copy)
Package Base: libgccjit
Description: Just-In-Time Compilation using GCC.
Upstream URL: https://gcc.gnu.org/wiki/JIT
Licenses: GPL3
Submitter: rubdos
Maintainer: flatwhatson (ZenTauro)
Last Packager: flatwhatson
Votes: 26
Popularity: 1.95
First Submitted: 2015-10-20 13:34
Last Updated: 2021-05-17 10:16

Pinned Comments

flatwhatson commented on 2021-05-17 22:01

NOTE: This package depends on gcc-libs=11.1.0, which presents a problem when upgrading from gcc-10.2.0.

The straightforward solution is to remove libgccjit and its dependees, update gcc, then rebuild and reinstall libgccjit and its dependees:

pacman -Rcs libgccjit
pacman -Syu
cd libgccjit && makepkg -si
# repeat for emacs-git etc.

You may be able to skip the uninstall step using --nodeps or --assume-installed flags. Obviously if using an AUR helper then your build/install commands will be a little different.

If the build is failing and you would like some help, please run makepkg --log and upload the entire build log somewhere. Pasting the last few lines of "make" output is useless, the actual error is usually far above in the log.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 Next › Last »

Jerror commented on 2021-05-18 22:05

Verifying source file signature failed, unknown public key 6C35B99...

The missing key isn't one of the PKGBUILD's validpgpkeys.

yin commented on 2021-05-18 10:49

@flatwhatson I do

$ ls
gcc-11.1.0.tar.xz  gcc-11.1.0.tar.xz.sig  libgccjit-11.1.0-1-x86_64.pkg.tar.zst  PKGBUILD


$ pacman -Qs gcc
local/gcc 11.1.0-1 (base-devel)
    The GNU Compiler Collection - C and C++ frontends
local/gcc-ada 11.1.0-1
    Ada front-end for GCC (GNAT)
local/gcc-libs 11.1.0-1
    Runtime libraries shipped by GCC
local/lib32-gcc-libs 11.1.0-1 (multilib-devel)
    32-bit runtime libraries shipped by GCC
local/libgccjit 11.1.0-1
    Just-In-Time Compilation using GCC.

flatwhatson commented on 2021-05-18 06:41

@yin Please double-check that you have libgccjit-11.1.0 installed. One reason that the "smoke test" would fail is if your libgccjit doesn't match your gcc-libs version.

yin commented on 2021-05-18 02:38

@flatwhatson yeah i done this twice. still cant install any emacs-native-comp or emacs-git. https://bin.disroot.org/?f2dc7912b5c6505d#BXLTuqgLwLdjDXg72gfhsmtfM2DteKnqoTwL7NKqLhPZ

flatwhatson commented on 2021-05-17 22:01

NOTE: This package depends on gcc-libs=11.1.0, which presents a problem when upgrading from gcc-10.2.0.

The straightforward solution is to remove libgccjit and its dependees, update gcc, then rebuild and reinstall libgccjit and its dependees:

pacman -Rcs libgccjit
pacman -Syu
cd libgccjit && makepkg -si
# repeat for emacs-git etc.

You may be able to skip the uninstall step using --nodeps or --assume-installed flags. Obviously if using an AUR helper then your build/install commands will be a little different.

If the build is failing and you would like some help, please run makepkg --log and upload the entire build log somewhere. Pasting the last few lines of "make" output is useless, the actual error is usually far above in the log.

yin commented on 2021-05-17 21:38

also, trying https://gcc.gnu.org/onlinedocs/jit/intro/tutorial01.html results

libgccjit.so: error: /tmp/libgccjit-gykrjo/fake.so: failed to map segment from shared object
NULL result%                                                                                                                                                    

yin commented on 2021-05-17 21:35

i've tried compiling emacs native comp with this version but i get this

checking for gcc_jit_context_acquire in -lgccjit... yes
checking for libgccjit.h... yes
configure: error: Installed libgccjit has failed passing the smoke test.
You can verify it yourself compiling:
<https://gcc.gnu.org/onlinedocs/jit/intro/tutorial01.html>.
Please report the issue to your distribution if libgccjit was installed through
that.
Here instructions on how to compile and install libgccjit from source:
<https://gcc.gnu.org/wiki/JIT>.
==> ERROR: A failure occurred in build().
    Aborting...
:: Packages failed to build: emacs-native-comp-git-enhanced-28.0.50.148605-1

ElVirolo commented on 2021-05-17 08:44

This works here:

# Maintainer: Andrew Whatson <https://aur.archlinux.org/account/flatwhatson>
# Maintainer: ZenTauro <zentauro at riseup dot net>
# Contributor: Ruben De Smet <ruben dot de dot smet at glycos dot org>
# Contributor: Jashandeep Sohi <jashandeep.s.sohi@gmail.com>

_gccmajor="11.1.0"
_gccver="11.1.0"
_gccsrc="gcc-${_gccver}"

pkgname='libgccjit'
pkgver="${_gccver}"
pkgrel=1
pkgdesc='Just-In-Time Compilation using GCC.'
url='https://gcc.gnu.org/wiki/JIT'
license=(
 'GPL3'
)
source=(
   "ftp://gcc.gnu.org/pub/gcc/releases/gcc-$_gccmajor/$_gccsrc.tar.xz"
)
sha512sums=('fd6bba0f67ff48069d03073d1a9b5e896383b1cfc9dde008e868e60a9ec5014a837d56af0ecbf467b3fb9b37ec74a676e819a18b44393a0a3c4280175b5d7ad8')
#  "https://sources.archlinux.org/other/gcc/gcc-8.2.1-20180831.tar.xz"
arch=(
 'i686'
 'x86_64'
)
depends=(
 'glibc'
# 'isl>=0.14'
 'libmpc'
 'zlib'
 "gcc-libs=$pkgver"
)
makedepends=(
 'binutils'
 'libmpc>=0.8.1'
 'gmp>=4.3.2'
 'mpfr>=2.4.2'
# 'isl>=0.14'
)
checkdepends=(
 'dejagnu'
)
options=(
 '!emptydirs'
)

prepare() {
 cd "$srcdir/$_gccsrc"

 # Do not run fixincludes
 sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
}

build() {
 install -d "$srcdir/$pkgname-build"
 cd "$srcdir/$pkgname-build"

 CPPFLAGS="$CPPFLAGS -O2"
 CFLAGS=${CFLAGS/-Werror=format-security/}
 CXXFLAGS=${CXXFLAGS/-Werror=format-security/}

 ../$_gccsrc/configure \
  --prefix="/usr" \
  --libexecdir="/usr/lib" \
  --with-system-zlib \
  --with-bugurl='https://github.com/jashandeep-sohi/libgccjit-pkg/issues' \
  --with-linker-hash-style=gnu \
  --enable-host-shared \
  --enable-shared \
  --enable-checking=release \
  --enable-languages=jit \
  --enable-linker-build-id \
  --enable-checking=release \
  --disable-multilib \
  --disable-bootstrap \
  --disable-libssp \
  --disable-lto \
  --disable-libquadmath \
  --disable-liboffloadmic \
  --disable-libada \
  --disable-libsanitizer \
  --disable-libquadmath-support \
  --disable-libgomp \
  --disable-libvtv \
  --disable-libsanitizer

 make
}

package() {
 cd "$srcdir/$pkgname-build/gcc"
 make DESTDIR="$pkgdir" jit.install-common jit.install-info
}

check() {
 cd "$srcdir/$pkgname-build/gcc"
 make check-jit RUNTESTFLAGS="-v -v -v"
}

post_install() {
 [[ -x usr/bin/install-info ]] || return 0
 install-info usr/share/info/libgccjit.info.gz usr/share/info/dir 2> /dev/null
}

# vim: tabstop=1 expandtab

solatis commented on 2021-05-17 07:25

I second that the gcc-libs=10.2.0 dependency is breaking current core. Is there a workaround?

cobaltspace commented on 2021-05-17 06:19

gcc-libs=10.2.0 can no longer be satisfied by gcc-libs in [core]. gcc-libs has been updated to 11.1.0