Я разместил сообщение на другом сайте, так что надеюсь, это не кросс-постинг:
У меня есть несколько версий gcc и g++ на моем Ubuntu 16.04, которые я выбираю с альтернативной конфигурацией. При компиляции очень простого исходника компилятор не может найти заголовки.(stddef.h: No such file or directory)
При исследовании выяснилось, что установки gcc не имеют полного каталога, например:
usr/lib/gcc/x86_64-linux-gnu/4.8 имеет каталог include с cc1.exe
в то время как:
usr/lib/gcc/x86_64-linux-gnu/4.7 не имел каталога include и cc1.exe (только cc1plus.exe)
Я переустановил 4.7, но, похоже, не могу завершить установку. Есть ли у вас помощь?
Спасибо
Эмма
решение1
Вы можете увидеть, какие пакеты предоставляют эти компоненты, используя dpkg -S
, например,
$ 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
должны libgcc-4.7-dev
были быть установлены как зависимости, gcc-4.7
однако возможно, что файлы были удалены вручную — попробуйте переустановить эти пакеты, например
sudo apt-get install --reinstall cpp-4.7 libgcc-4.7-dev