не встановлений прийнятний компілятор 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


точно таке ж питання
блам

Вам слід спробувати знайти двійкові файли попередньої збірки для вашої системи. Це найпростіший спосіб, якщо у вас немає кореневого доступу.
C. Yduqoli

Відповіді:


447

Компілятор gcc не у вашому $PATH. Це означає, що або у вас не встановлено gcc, або він не знаходиться у вашій змінній $ PATH.

Щоб встановити gcc, використовуйте це: (запустити як root)

  • Redhat база:

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

    apt-get install build-essential

11
Мені подобаються методи встановлення build-basic , який містить gcc, g ++, make і т.д.
Spectral

2
Чи існує альтернатива блискавці?
Almino Melo

1
це спільний хостинг, як це навіть прийняте рішення? нам потрібен python, в разі випадків для вузла, який також працює на рівні користувача, немає кореня. це все для цього, що потребує корінця. це повинна бути позакоренева процедура IMO
blamb

1
Насправді це yum groupinstall "Development T ools" у CentOS 7
Francesco Gualazzi

3
Як би ви визначили, чи встановлено його, але не у вашій змінній $ PATH?
JMess

82

вам потрібно бігти

yum install gcc

3
Працював над CentOS 7. Спасибі
Faliorn

Працював над Debian 4.9. Спасибі
Джад Чахін

Працював над CentOS 8. Спасибі
twasbrillig

Я отримую помилку "Помилка доступу до файлу для конфігураційного файла: ///etc/yum.conf". У мене є спільний хостинг Bluehost.
Пол Кріс Джонс

Привіт @PaulChrisJones, я зіткнувся з тією ж проблемою, коли я спробував встановити gcc в моєму blueshot хостінгу з використанням ssh. Я зіткнувся з цим, оскільки мій файл конфігурації не запускався. Якщо вам вдалося знайти рішення, будь ласка, повідомте мене. Було б дуже корисно!
Honey Khandelwal

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

Детальніше дивіться посилання


58

Вам потрібно буде бігти

sudo apt-get install build-essential

спочатку припустимо, що ви перебуваєте в системі debain / ubuntu


1
Я отримав цю відповідь після введення вашого коду: sudo: не вдається mkdir / var / db / sudo: Немає такого файлу чи каталогу. Ми віримо, що ви отримали звичайну лекцію від місцевого системного адміністратора. Зазвичай зводиться до цих трьох речей: # 1) Поважайте конфіденційність інших. # 2) Подумайте, перш ніж набирати текст. # 3) З великою силою настає велика відповідальність. [sudo] пароль для <usrname>: <імені> немає у файлі sudoers. Про цей випадок буде повідомлено.
mik.ro

1
який дистрибутив ви використовуєте?
vahid abdi

@ mik.ro, яку ОС / дистрибутив ти працюєш. Ви ввійшли як корінь випадково?
Том Свіфт

Я використовую hostgator, це на CentOS x86.
mik.ro

1
Добре, я вже перевірив сайт Hostgator і рішення дуже просто і сумно: вони не дозволяють GCC на своїх загальних серверах посилання Якщо хто -то має уявлення про те, як я можу встановити інший дистрибутив пітона на їх віртуальний хостинг я ціную це .
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

10
коли виконати $PWD/../gcc-5.2.0/configure --prefix=$HOME/gcc-5.2.0 --enable-languages=c,c++,fortran,goвсе-таки результат тієї ж конфігурації
Тоні Чоу

Я отримав "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
srghma

9

Попросіть когось із доступом до кореневого облікового запису на цьому сервері sudo apt-get install build-essential. Якщо ви не знаєте, хто має root-доступ, зв’яжіться зі службою підтримки вашого спільного хостингу та запитайте їх.

Редагувати: Якщо вам не надано доступ до root, ви ніколи не будете працювати. Боюся, вам доведеться змінити хостинг-провайдера.



7

sudo apt install build-essential це команда

Але якщо ви отримаєте помилку " пакет можна знайти ", запустіть

  • sudo apt update перший
  • тоді sudo apt install build-essential

Це працювало для мене.


Працював для мене на Ubuntu 18.04
Liz

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.