ไม่พบคอมไพเลอร์ C ที่ยอมรับได้ใน $ PATH เมื่อติดตั้ง python


241

ฉันพยายามติดตั้งสภาพแวดล้อมหลามใหม่บนโฮสติ้งที่ใช้ร่วมกันของฉัน ฉันทำตามขั้นตอนที่เขียนในโพสต์นี้ :

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 ชั่วโมง แต่ยังคงติดอยู่ในที่เดียว

UPDATE

Hostgator ไม่อนุญาต gcc ในบัญชีที่แบ่งปัน: http://support.hostgator.com/articles/pre-sales-questions/compatible-technologies


ปัญหาเดียวกัน
blamb

คุณควรลองหา prebuild ไบนารีสำหรับระบบของคุณ มันเป็นวิธีที่ง่ายที่สุดถ้าคุณไม่มีสิทธิ์เข้าถึงรูต
C. Yduqoli

คำตอบ:


447

คอมไพเลอร์ gcc $PATHไม่ได้อยู่ในของคุณ หมายความว่าคุณไม่ได้ติดตั้ง gcc หรือไม่ได้อยู่ในตัวแปร $ PATH ของคุณ

หากต้องการติดตั้ง gcc ให้ใช้สิ่งนี้: (เรียกใช้เป็นรูท)

  • ฐาน Redhat:

    yum groupinstall "Development Tools"
  • ฐานเดเบียน:

    apt-get install build-essential

11
ฉันชอบวิธีการติดตั้งbuild-essentialซึ่งประกอบด้วย gcc, g ++, make ฯลฯ
Spectral

2
มีทางเลือกอื่นสำหรับ zypper หรือไม่?
Almino Melo

1
นี่คือโฮสติ้งที่ใช้ร่วมกันวิธีนี้เป็นวิธีที่ยอมรับได้อย่างไร เราต้องการไพ ธ อนและในบางกรณีสำหรับโหนดซึ่งกำลังดำเนินการในระดับผู้ใช้ไม่มีรูท นี่คือดีลเลอร์สำหรับดีลนี้ต้องใช้รูท นี่ควรจะเป็นขั้นตอนที่ไม่ใช่รูท IMO
blamb

1
จริง ๆ แล้วมันคือ yum groupinstall "Development T ools" ใน CentOS 7
Francesco Gualazzi

3
คุณจะทราบได้อย่างไรว่ามีการติดตั้ง แต่ไม่ได้อยู่ในตัวแปร $ PATH ของคุณหรือไม่?
JMess

82

คุณต้องวิ่ง

yum install gcc

3
ทำงานบน CentOS 7. ขอบคุณ
Faliorn

ทำงานบนเดเบียน 4.9 ขอบคุณ
Jad Chahine

ทำงานบน CentOS 8 ขอบคุณ
twasbrillig

ฉันได้รับข้อผิดพลาด "ข้อผิดพลาดในการเข้าถึงไฟล์สำหรับไฟล์กำหนดค่า: ///etc/yum.conf" ฉันมี Bluehost แชร์โฮสติ้ง
Paul Chris Jones

เฮ้ @PaulChrisJones ฉันพบปัญหาเดียวกันเมื่อฉันลองติดตั้ง gcc ใน blueshot hosting acc โดยใช้ ssh ฉันพบสิ่งนี้เพราะไฟล์กำหนดค่าของฉันไม่ทำงาน หากคุณจัดการเพื่อหาวิธีการแก้ปัญหาโปรดแจ้งให้เราทราบ มันจะเป็นความช่วยเหลือที่ดี !
ฮันนี่ 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>: <usrname> ไม่ได้อยู่ในไฟล์ sudoers เหตุการณ์นี้จะถูกรายงาน
mik.ro

1
คุณใช้ distro ตัวไหน
vahid abdi

@ mik.ro คุณใช้ OS / การกระจายแบบใด คุณเข้าสู่ระบบในฐานะ root โดยโอกาสใด ๆ ?
Tom Swifty

ฉันใช้ hostgator อยู่บน CentOS x86
mik.ro

1
ตกลงฉันได้ตรวจสอบเว็บไซต์ hostgator และวิธีแก้ปัญหานั้นง่ายและน่าเศร้า: พวกเขาไม่อนุญาต gcc บนลิงก์เซิร์ฟเวอร์ที่ใช้ร่วมกันของพวกเขาหากใครมีความคิดฉันจะติดตั้งไพ ธ อนตัวอื่นบนโฮสติ้งที่ใช้ร่วมกันได้อย่างไร .
mik.ro

12

คุณจะต้องติดตั้งเป็นรูทเนื่องจากโฮสติ้งที่ใช้ร่วมกัน นี่คือ tut ที่ชี้ให้เห็นว่าขั้นตอนนี้เป็นอย่างไร 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ยังส่งผลให้เกิดข้อผิดพลาดเดียวกันกำหนดค่า: ข้อผิดพลาด: ไม่พบคอมไพเลอร์ C ที่ยอมรับได้ใน $ PATH
Tony Chou

ฉันได้รับ "configure: error: ไม่พบ C คอมไพเลอร์ที่ยอมรับได้ใน $ PATH" เมื่อดำเนินการ $ PWD ... มีวิธีแก้ปัญหาที่รู้จักหรือไม่?
เทอร์รี่


9

รับคนที่สามารถเข้าถึงบัญชีรูทบนเซิร์ฟเวอร์นั้นเพื่อให้ทำงานsudo apt-get install build-essentialได้ หากคุณไม่ทราบว่าใครมีสิทธิ์เข้าถึงรูทโปรดติดต่อทีมสนับสนุนสำหรับโฮสติ้งที่ใช้ร่วมกันของคุณและถามพวกเขา

แก้ไข: หากคุณไม่ได้รับอนุญาตให้เข้าถึงรูทคุณจะไม่สามารถใช้งานได้ คุณจะต้องเปลี่ยนผู้ให้บริการโฮสต์ฉันกลัว



7

sudo apt install build-essential เป็นคำสั่ง

แต่ถ้าคุณได้รับข้อผิดพลาด" แพคเกจสามารถพบได้ " เรียกใช้

  • sudo apt update เป็นครั้งแรก
  • แล้วก็ sudo apt install build-essential

สิ่งนี้ใช้ได้สำหรับฉัน


ทำงานกับฉันใน Ubuntu 18.04
Liz

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.