работаю на машине Ubuntu. Пытаюсь запустить make try для компиляции try.cpp. Не могу заставить его работать. Перепробовал все решения в сети. Я использую apt-get. Перепробовал все, что есть в сети.
sudo apt-get install build-essential g++
sudo apt-get upgrade
и многое другое.
Это снова и снова вызывает у меня одну и ту же проблему.
$ g++ try.cpp -o try
make: g++: Command not found
make: *** [BHLDA] Error 127
Я подозреваю, что это из-за того, что моя переменная PATH неверна. Я не знаю, как изменить переменную PATH, чтобы решить эту проблему. Моя переменная PATH выглядит так:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/java/jdk1.7.0_45/bin
Приоритетный выбор пакета:
$ apt-cache policy g++
g++:
Installed: 4:4.8.2-1ubuntu6
Candidate: 4:4.8.2-1ubuntu6
Version table:
*** 4:4.8.2-1ubuntu6 0
500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status`
и
$ dpkg -L g++ | grep bin
/usr/bin
/usr/bin/g++
/usr/bin/x86_64-linux-gnu-g++
Какие-либо предложения?
решение1
После обсуждения с автором в чате результат dpkg -L g++ | grep bin
был следующим:
/usr/bin
/usr/bin/g++
/usr/bin/x86_64-linux-gnu-g++
Однако когда ОП это сделал, file /usr/bin/g++
он получил ошибку «Файл не найден».
Я не уверен, что из перечисленного ниже помогло решить проблему, но что-то помогло:
Сначала я заставил его попробовать
sudo apt-get purge g++
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential g++
Первая команда удаляет build-essential, поэтому в конце пришлось переустановить его. Однако g++ все еще не работал как команда. Поскольку запись для /usr/bin/g++
все еще не была там, я заставил его вручную добавить символическую ссылку с
ln -sv /usr/bin/g++-4.8 /usr/bin/g++
И это, казалось, решило проблему.