web-dev-qa-db-fra.com

g ++ gcc include files not found

J'ai posté sur un autre site, donc j'espère que ce n'est pas une publication croisée:

J'ai quelques versions de gcc et g ++ sur mon Ubuntu 16.04 que je sélectionne avec une configuration alternative. Lors de la compilation d'une source très simple, le compilateur ne peut pas trouver les en-têtes. (Stddef.h: Aucun fichier ou répertoire de ce type).

Après enquête, les installations de gcc n’ont pas de répertoire complet, par exemple:

usr/lib/gcc/x86_64-linux-gnu/4.8 a un répertoire d'inclusion avec cc1.exe

tandis que:

usr/lib/gcc/x86_64-linux-gnu/4.7 n'a pas de répertoire d'inclusion ni de cc1.exe (juste un cc1plus.exe)

J'ai réinstallé la version 4.7 mais je n'arrive pas à obtenir une installation complète, aucune aide?

Merci

Emma

1
emmasaunders123

Vous pouvez voir quels packages fournissent ces composants en utilisant dpkg -S par exemple.

$ dpkg -S /usr/lib/gcc/x86_64-linux-gnu/4.7/cc1 /usr/lib/gcc/x86_64-linux-gnu/4.7/include
cpp-4.7: /usr/lib/gcc/x86_64-linux-gnu/4.7/cc1
libgcc-4.7-dev:AMD64: /usr/lib/gcc/x86_64-linux-gnu/4.7/include

cpp-4.7 et libgcc-4.7-dev auraient tous deux dû être installés en tant que dépendances de gcc-4.7, mais il est possible que les fichiers aient été supprimés manuellement. Essayez de ré-installer ces packages i.e.

Sudo apt-get install --reinstall cpp-4.7 libgcc-4.7-dev
1
steeldriver