gcc: ошибка при попытке выполнить exc 'cc1plus': execvp: такого файла или каталога нет

18

Я новичок, но приключенческий. Я трижды загружаю Windows, Fedora и Ubuntu 14.04 LTS (все 64). Изучение, но не использование dpkg, apt и apt-get. Начинаю изучать C ++, используя Ubuntu (единственный с установленным gcc). Поэтому при первой попытке компиляции я запустил команду gcc xy.ccи получил следующее:

gcc: error trying to exec 'cc1plus' : execvp: No such file or directory

Поэтому я искал на моем компьютере cc1plus и execvp. И не нашел ни того, ни другого. Просто execvp.3.gz в каталоге /user/share/man/man3и cc1 в /user/lib/gcc/x86_64-linux-gnu/4.8.

Итак, целая куча работы и изучения о сборщиках и контролерах пакетов, но не хватает смелости удалить, переустановить и т. Д.

У вас есть предложения?

SailorDon
источник

Ответы:

24

Возможно, на вашей машине отсутствует пакет g ++. Откройте терминал и установите его с помощью следующей команды:

sudo apt-get install g++

Для компиляции с использованием g ++ используйте это

g++ -o test.o test.cpp

g ++ может использоваться для компиляции исходного кода C ++, установка Ubuntu по умолчанию идет с gcc, но не с g ++.

Вы пытаетесь скомпилировать исходный код C ++, используя компилятор C. gcc обычно успешно компилирует код C ++, но по умолчанию он не связывает какие-либо специфичные для c ++ библиотеки (см. этот ответ в Stack Overflow ).

Если сообщение отображается как:, Couldn't find package ...попробуйте следующие команды

sudo apt-get update && sudo apt-get upgrade

тогда

sudo apt-get install g++
Aritra
источник
6

cc1plus - это бэкэнд c ++ (настоящий компилятор) для gcc, если вы в основном собираетесь программировать на c ++, вам действительно нужно установить g ++ (с ним будет cc1plus). Используя один из компонентов системы пакетов apt-get, synaptic, software manager или ряд других, он устанавливает с ним зависимости.

execvp - это функция программирования, файл, который вы нашли в соответствии с ней, является страницей руководства (man) для нее. для просмотра откройте терминал и наберите man execvp. Страницы руководства часто бывают онлайн, и у них есть тонна информации в них о клиенте и программировании.

грузовой
источник