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: 24
Popularity: 2.64
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 »

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

loki7990 commented on 2021-05-01 16:40

Well, It turned out to be a problem with paru I guess. Downloading the package and running makepkg -si worked perfectly fine. Thanks again @flatwhatson!

loki7990 commented on 2021-04-30 15:11

Thanks for the quick response @flatwhatson! Unfortunately your fix didn't work either. I get the same error messages as with and without @magnetite's solution. If it's any help, this is the specific error message w/o @magnetite's solution:

../../../gcc-10.2.0/libcpp/expr.c: In function ‘unsigned int cpp_classify_number(cpp_reader*, const cpp_token*, const char**, location_t)’:
../../../gcc-10.2.0/libcpp/expr.c:802:18: error: format not a string literal and no format arguments [-Werror=format-security]
  802 |        0, message);
      |                  ^
../../../gcc-10.2.0/libcpp/expr.c:805:39: error: format not a string literal and no format arguments [-Werror=format-security]
  805 |           virtual_location, 0, message);
      |                                       ^