не найден приемлемый компилятор C в $ PATH при установке python

241

Я пытаюсь установить новую среду Python на свой хостинг. Я следую за шагами, написанными в этом посте :

mkdir ~/src
wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz
tar -zxvf Python-2.7.1.tar.gz
cd Python-2.7.1
mkdir ~/.localpython
./configure --prefix=/home/<user>/.localpython
make
make install

После перехода к команде "./configure --prefix = / home //. Localpython" я получаю следующий вывод:

checking for --enable-universalsdk... no
checking for --with-universal-archs... 32-bit
checking MACHDEP... linux3
checking EXTRAPLATDIR... 
checking machine type as reported by uname -m... x86_64
checking for --without-gcc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/home3/mikos89/Python-2.7.1':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.

Как можно решить эту проблему? Я пытался найти решение в течение 3 часов, но все еще застрял в одном месте.

ОБНОВИТЬ

Hostgator не разрешает gcc для своих общих учетных записей: http://support.hostgator.com/articles/pre-sales-questions/compatible-technologies

mik.ro
источник
точно
такая
Вы должны попытаться найти готовые двоичные файлы для вашей системы. Это самый простой способ, если у вас нет root-доступа.
С. Идуколи

Ответы:

447

Компилятор gcc не в вашем $PATH. Это означает, что либо у вас не установлен gcc, либо его нет в переменной $ PATH.

Для установки gcc используйте это: (запустите от имени root)

  • Редхат база:

    yum groupinstall "Development Tools"
  • База Debian:

    apt-get install build-essential
Вахид Абди
источник
11
Мне нравятся методы установки build-essential , который содержит gcc, g ++, make и т. Д.
Spectral
2
Есть ли альтернатива для zypper?
Almino Melo
1
это виртуальный хостинг, как это вообще приемлемое решение? нам нужен python, в некоторых случаях для узла, который также входит как пользовательский уровень, без рута. это является нарушителем соглашения для всего этого, нуждающегося в root. Предполагается, что это не корневая процедура IMO
бля
1
На самом деле это yum groupinstall "Development T ools" в CentOS 7
Франческо Гуалацци
3
Как бы вы определили, установлен ли он, но не в переменной $ PATH?
JMess
82

тебе нужно бежать

yum install gcc
mlowton
источник
3
Работал на CentOS 7. Спасибо
Faliorn
Работал на Debian 4.9. Спасибо
Jad Chahine
Работал на CentOS 8. Спасибо
twasbrillig
Я получаю сообщение об ошибке «Ошибка доступа к файлу конфигурации: ///etc/yum.conf». У меня есть хостинг Bluehost.
Пол Крис Джонс
Привет @PaulChrisJones, я столкнулся с той же проблемой, когда пытался установить gcc на свой хостинг blueshot, используя ssh. Я столкнулся с этим, потому что мой файл конфигурации не запускается. Если вам удалось найти решение, пожалуйста, дайте мне знать. Это было бы очень полезно!
Мед Хандельвал
66

для Ubuntu / Debian:

# sudo apt-get install build-essential

Для RHEL / CentOS

#rpm -qa | grep gcc
# yum install gcc glibc glibc-common gd gd-devel -y

или

 # yum groupinstall "Development tools" -y

Подробнее смотрите ссылку

lakshmikandan
источник
58

Вам нужно будет бежать

sudo apt-get install build-essential

сначала предположим, что вы используете систему debain / ubuntu

Том Свифти
источник
1
Я получил этот ответ после того, как набрал ваш код: sudo: неспособен mkdir / var / db / sudo: Нет такого файла или каталога. Мы надеемся, что вы получили обычную лекцию от локального системного администратора. Обычно это сводится к этим трем вещам: # 1) Уважать частную жизнь других. # 2) Подумайте, прежде чем печатать. № 3) С большой силой приходит большая ответственность. Пароль [sudo] для <usrname>: <usrname> отсутствует в файле sudoers. Об этом инциденте будет сообщено.
mik.ro
1
какой дистрибутив вы используете?
Вахид Абди
@ mik.ro, какую ОС / дистрибутив вы используете. Вы вошли в систему как root случайно?
Том Свифти,
Я использую hostgator, это на CentOS x86.
mik.ro
1
Хорошо, я проверил веб-сайт hostgator, и решение очень простое и грустное: они не разрешают gcc ссылку на свои общие серверы. Если у кого-то есть идея, как я могу установить другой дистрибутив python на их общий хостинг, я буду признателен за это. ,
mik.ro
12

Вам нужно будет установить его как root, поскольку он является общим хостингом. Вот тут, который указывает, как этот шаг. http://luiarthur.github.io/gccinstall

cd ~/src
wget http://www.netgull.com/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.gz

или эквивалентный источник GCC, то

tar -xvf gcc-5.2.0.tar.gz
cd gcc-5.2.0
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
$PWD/../gcc-5.2.0/configure --prefix=$HOME/gcc-5.2.0 --enable-languages=c,c++,fortran,go
make
make install

затем добавьте в .bashrc или эквивалентный

export PATH=~/gcc-5.2.0/bin:$PATH
export LD_LIBRARY_PATH=~/gcc-5.2.0/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=~/gcc-5.2.0/lib64:$LD_LIBRARY_PATH
blamb
источник
10
когда выполнение $PWD/../gcc-5.2.0/configure --prefix=$HOME/gcc-5.2.0 --enable-languages=c,c++,fortran,goвсе еще приводит к той же самой ошибке, сконфигурируйте: ошибка: не найден приемлемый компилятор C в $ PATH
Tony Chou
Я получил "configure: error: не найден приемлемый компилятор C в $ PATH" при выполнении $ PWD ... Есть ли известное решение ???
Терри
12

Если вы используете alphine с докером, сделайте это:

apk --update add gcc make g++ zlib-dev
Сахит Вибудхи
источник
3
apk add --no-cache git autoconf automake gawk build-base
Сргма
9

Получить кого-то с доступом к учетной записи root на этом сервере для запуска sudo apt-get install build-essential. Если вы не знаете, у кого есть root-доступ, обратитесь в службу поддержки для вашего общего хостинга и спросите их.

Изменить: Если вам не разрешен доступ к root, вы никогда не получите его работать. Боюсь, вам придется сменить хостинг-провайдера.

WDH
источник
7

Запустить apt-get install gccв Suse Linux

черный
источник
должно быть: sudo zypper install gccдля Suse Linux
Дейв Кэмпбелл
7

sudo apt install build-essential это команда

Но если вы получаете сообщение об ошибке « пакет может быть найден », запустите

  • sudo apt update первый
  • затем sudo apt install build-essential

Это сработало для меня.

Мбига Сигги
источник
Работал для меня на Ubuntu 18.04
Лиз
4

На Arch Linux запустите следующее:

sudo pacman -S base-devel

user6735634
источник