Package Details: gcc11 11.4.0-1

Git Clone URL: https://aur.archlinux.org/gcc11.git (read-only, click to copy)
Package Base: gcc11
Description: The GNU Compiler Collection - C and C++ frontends (11.x.x)
Upstream URL: https://gcc.gnu.org
Licenses: GPL, custom, LGPL, FDL
Provides: gcc
Submitter: yan12125
Maintainer: FabioLolix
Last Packager: FabioLolix
Votes: 5
Popularity: 0.47
First Submitted: 2023-04-05 08:26 (UTC)
Last Updated: 2024-08-04 20:19 (UTC)

Required by (2403)

Sources (5)

Pinned Comments

lahwaacz commented on 2023-08-27 15:27 (UTC)

@AskAlice It is much simpler to set the MAKEFLAGS environment variable, e.g. export MAKEFLAGS="-j$(nproc)", and then build the package. See the relevant wiki section: https://wiki.archlinux.org/title/Makepkg#Parallel_compilation

C0rn3j commented on 2023-06-19 09:21 (UTC)

To import the new key:

gpg --keyserver hkps://keyserver.ubuntu.com --recv-key 6C35B99309B5FA62

FabioLolix commented on 2023-05-16 07:26 (UTC)

@DarshK35 you need to add the PGP key, gcc is better build in chroot with devtools (don't know what is using manjaro nowdays)

@joshm gcc is quite long, especially if makepkg.conf isn't configured to use all cores

Latest Comments

1 2 Next › Last »

MarsSeed commented on 2024-08-10 17:06 (UTC)

@FabioLolix, please kindly remove provides=gcc and provides=gcc-libs from the respective subpackages. As these are not correct.

All packages that need gcc11 or gcc11-libs must depend on them directly.

Installing gcc11-libs would pacman to uninstall gcc-libs without any warnings whatsoever, and this in turn would break a lot of system packages. It is evidence of package configuration error of gcc11-libs.

jaap commented on 2024-06-27 21:46 (UTC)

I managed to partially fix the issue mentioned by @CatchACode. Adding -Wno-incompatible-pointer-types to the cflags gets the process a bit further. However this does not fully work, there seems to be a issue with dlfcs:

cc1plus: warning: command-line option ‘-Wno-incompatible-pointer-types’ is valid for C/ObjC but not for C++
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c: In function ‘bool try_init_one_plugin(plugin_name_args*)’:
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:703:42: error: ‘RTLD_NOW’ was not declared in this scope
  703 |   dl_handle = dlopen (plugin->full_name, RTLD_NOW | RTLD_GLOBAL);
      |                                          ^~~~~~~~
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:703:53: error: ‘RTLD_GLOBAL’ was not declared in this scope
  703 |   dl_handle = dlopen (plugin->full_name, RTLD_NOW | RTLD_GLOBAL);
      |                                                     ^~~~~~~~~~~
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:703:15: error: ‘dlopen’ was not declared in this scope; did you mean ‘popen’?
  703 |   dl_handle = dlopen (plugin->full_name, RTLD_NOW | RTLD_GLOBAL);
      |               ^~~~~~
      |               popen
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:706:62: error: ‘dlerror’ was not declared in this scope; did you mean ‘perror’?
  706 |       error ("cannot load plugin %s: %s", plugin->full_name, dlerror ());
      |                                                              ^~~~~~~
      |                                                              perror
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:711:3: error: ‘dlerror’ was not declared in this scope; did you mean ‘perror’?
  711 |   dlerror ();
      |   ^~~~~~~
      |   perror
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:714:7: error: ‘dlsym’ was not declared in this scope
  714 |   if (dlsym (dl_handle, str_license) == NULL)
      |       ^~~~~
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:720:7: error: ‘dlsym’ was not declared in this scope
  720 |     = dlsym (dl_handle, str_plugin_init_func_name);
      |       ^~~~~
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:725:7: error: ‘dlclose’ was not declared in this scope; did you mean ‘pclose’?
  725 |       dlclose(dl_handle);
      |       ^~~~~~~
      |       pclose
/home/jaap/applications/gcc11/src/gcc/gcc/plugin.c:734:7: error: ‘dlclose’ was not declared in this scope; did you mean ‘pclose’?
  734 |       dlclose(dl_handle);
      |       ^~~~~~~
      |       pclose

thales.barretto commented on 2024-05-28 00:49 (UTC)

@LoKolbasz @CatchACode i can confirm that building with gcc14 breaks, but with gcc13 works. The solution proposed by @LoKolbasz works.

LoKolbasz commented on 2024-05-19 18:16 (UTC)

@CatchACode This error seems to occur when using gcc 14. Either downgrading gcc to version 13.X.X or installing the gcc13 package resolves it. If you decide to use the second solution, you need to set the compiler flags in PKGBUILD as follows: CC=gcc-13 GXX=g++-13 You can already find these flags commented out in the PKGBUILD with gcc-9. Just comment them out and set them to 13.

Gcc-13 should probably be added to dependencies, or add some kind of custom patch to the source code to avoid this error.

CatchACode commented on 2024-05-15 10:45 (UTC)

When build with paru I get this error

/home/CatchACode/gcc11/src/gcc/libiberty/simple-object-mach-o.c: In function ‘simple_object_mach_o_write_segment’:
/home/CatchACode/gcc11/src/gcc/libiberty/simple-object-mach-o.c:1231:17: error: passing argument 1 of ‘set_32’ from incompatible pointer type [-Wincompatible-pointer-types]
 1231 |         set_32 (&index[i], index[i]);
      |                 ^~~~~~~~~
      |                 |
      |                 unsigned int *
/home/CatchACode/gcc11/src/gcc/libiberty/simple-object-mach-o.c:1231:17: note: expected ‘unsigned char *’ but argument is of type ‘unsigned int *’
make[3]: *** [Makefile:1306: simple-object-mach-o.o] Error 1
make[3]: Leaving directory '/home/CatchACode/gcc11/src/gcc-build/libiberty'
make[2]: *** [Makefile:13141: all-stage1-libiberty] Error 2
make[2]: Leaving directory '/home/CatchACode/gcc11/src/gcc-build'
make[1]: *** [Makefile:25184: stage1-bubble] Error 2
make[1]: Leaving directory '/home/CatchACode/gcc11/src/gcc-build'
make: *** [Makefile:1015: all] Error 2

lahwaacz commented on 2023-08-27 15:27 (UTC)

@AskAlice It is much simpler to set the MAKEFLAGS environment variable, e.g. export MAKEFLAGS="-j$(nproc)", and then build the package. See the relevant wiki section: https://wiki.archlinux.org/title/Makepkg#Parallel_compilation

AskAlice commented on 2023-08-27 13:03 (UTC) (edited on 2023-08-27 14:21 (UTC) by AskAlice)

I was 30 minutes into this single-threaded compilation when I went to make some coffee. Someone in the other room was running the microwave, right at the same time that my laser printer started whirring up to clean the toner cartriges on interval. The power went out.

I don't know when this will compile, but I do know that I will be older than I am now. And I'll probably be dying for more coffee.

Anyone who actually plans on building this should: clone this repo, and add

[[ $(nproc) -gt 3 ]] && cores=$(( $(nproc) - 2 )) || cores=$(nproc)

then replace every instance of ^(\s+)make with $1make -j${cores}

lahwaacz commented on 2023-08-25 09:43 (UTC)

The provides=("${_pkgbase}=${pkgver}"), provides=("${_pkgbase}-libs=${pkgver}" ...) etc. don't make sense, gcc11-libs actually depends on gcc-libs via these symlinks: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=gcc11#n212

keilmillerjr commented on 2023-06-22 12:24 (UTC) (edited on 2023-06-23 13:32 (UTC) by keilmillerjr)

@C0rn3j I already have that key. Error about PGP signature still remains. Any ideas?

gpg --keyserver hkps://keyserver.ubuntu.com --recv-key 6C35B99309B5FA62
gpg: key 6C35B99309B5FA62: 2 duplicate signatures removed
gpg: key 6C35B99309B5FA62: "Jakub Jelinek <jakub@redhat.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1
==> Verifying source file signatures with gpg...
    gcc-11.4.0.tar.xz ... FAILED (unknown public key 6C35B99309B5FA62)
==> ERROR: One or more PGP signatures could not be verified!

EDIT: Rebuilding a package that depended on gcc11 resolved the issue. I am not sure why, because the error is about PGP signatures and not versioning, but it worked.

eduardolucioac commented on 2023-06-20 19:23 (UTC) (edited on 2023-06-20 19:25 (UTC) by eduardolucioac)

In case of problems in gcc11 update

If gcc11 has problems regarding the version of gcc11-libs. So try to install gcc11-libs first...

yay -S gcc11-libs

If the system says breaking dependency against gcc11 itself, then remove it without breaking any dependency ("-Rdd")...

yay -Rdd gcc11

... , install gcc11-libs...

yay -S gcc11-libs

... and install gcc11...

yay -S gcc11

Done!🤠