ไม่สามารถติดตั้ง build-essential บน CentOS ได้


68

เมื่อฉันเรียกใช้คำสั่ง:

sudo apt-get install build-essential

ฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:

Reading Package Lists... Done
Building Dependency Tree... Done
E: Couldn't find package build-essential

1
Distro (Ubuntu? Debian?) และรุ่นคืออะไร ซื้อคืนคืออะไร?

2
คุณใช้เคอร์เนล Red Hat ในการกระจาย Debian หรือ Ubuntu หรือไม่? หรือคุณกำลังใช้งาน Red Hat อยู่หรือเปล่า? หากคุณใช้การแจกจ่าย Red Hat คุณควรใช้yumหรือup2date(แล้วแต่ว่าจะเหมาะสมกับรุ่นการแจกจ่ายของคุณ)
sarnold

1
ขอบคุณสำหรับความช่วยเหลือของคุณ! Googling วิธีการติดตั้ง build-essential สำหรับ CentOS ชี้ให้ฉันในทิศทางที่ถูกต้อง
Waley Chen

1
นี่คือ cmd: sudo yum install -y libxml2 libxml2-devel libxslt libxslt-devel
Waley Chen

1
อย่าลืมที่จะเพิ่มมันเป็นคำตอบและยอมรับเมื่อซอฟต์แวร์สแต็คช่วยให้คุณทำเช่นนั้น :)
sarnold

คำตอบ:


111

ฉันเชื่อว่ายังคงใช้งานได้

sudo yum groupinstall 'Development Tools'

5
สิ่งนี้จะติดตั้งเครื่องมือพัฒนาทุกอย่างที่มีอยู่เพียงแค่ FYI
2720864

3
ดูyum group info "Development Tools"รายการแพคเกจที่ติดตั้งไว้
user12345

1
มันสั้นไปจากเครื่องมือพัฒนาทั้งหมดในกรณีที่คุณกังวล ส่วนใหญ่เป็นพื้นฐานสำหรับ c / c ++ ด้วย automake, autoconf และอื่น ๆ
Barry Kelly

1
แต่ถ้าคุณต้องการกำหนดค่า / ทำการ / ทำการติดตั้งเพื่อให้ทำงานอาจยังคงมากเกินไป (เช่นมี git และ subversion) มันเป็นการดีกว่าที่จะเริ่มต้นด้วยการติดตั้งยำของ Ketan Patel และหากยังมีบางสิ่งที่ขาดหายไปสำหรับเครื่องนี้
2560

มันขึ้นอยู่กับ "ภาษาการเขียนโปรแกรม" ที่จำเป็น แต่ถ้าคุณคาดว่าจะคอมไพล์ c ++ คุณจะต้องอยู่ในเครื่องหมายบวกglibc-develและอาจmake... กลุ่มยำนั้นช่างน่าเบื่อ!
Sandburg

43
yum install gcc gcc-c++ make 

สิ่งนี้ทำงานได้เทียบเท่ากับbuild-essentialใน CentOS


2
openssl-develบังเอิญอาจจะดึงในสิ่งที่คุณต้องการ แต่ไม่ถูกต้องbuild-essentialเอง
tripleee

4

Metapackage build-essentialนั้นมีไว้ใน Debian เพื่อรวบรวมเครื่องมือสร้างที่จำเป็นทั่วไปใน Debian build chain รวมถึงที่คุณต้องการสร้าง.debแพ็คเกจ Centos ใช้ตัวจัดการแพ็คเกจอื่นทั้งหมดและไม่ได้ให้อะไรเช่นนี้โดยตรง คุณจะต้องติดตั้งแต่ละองค์ประกอบของ toolchain ( gcc, makeไลบรารีการพัฒนาทั่วไป, เอกสาร, ฯลฯ รวมถึงหลักสูตรเครื่องมือในการสร้างแพ็คเกจ RPM ด้วยตนเองหากคุณต้องการ)

หากคุณวาง.debหรือ RPM สิ่งgcc, gcc-c++, glibc-develและmakeควรจะได้รับแพคเกจ Centos ที่สอดคล้องกันในขณะนี้


เป็นต่อ@ PabloCastellazzi ของความคิดเห็นเก่า คุณจะได้รับโซ่เครื่องมือ RPM rpm-buildกับแพคเกจ rpmbuildชื่อยูทิลิตี้ที่เกิดขึ้นจริงคือ สำหรับข้อมูลเพิ่มเติมโปรดดูตัวอย่างเช่นwiki.centos.org/HowTos/SetupRpmBuildEnvironment
tripleee

1

ฉันรวมโซลูชันที่ได้รับการยอมรับจาก Scott Likens กับความคิดเห็นจากผู้ใช้ 12345 และก่อนอื่นให้ดูสิ่งที่อยู่ในกลุ่ม "เครื่องมือสำหรับการพัฒนา" ก่อนทำการติดตั้ง

ตามที่ผู้ใช้ 12345 ชี้ให้เห็นคุณสามารถทำได้ด้วย:

$ yum group info "Development Tools"

ฉันไม่ต้องการติดตั้งแพคเกจเหมือนautoconfและautomakeและbinutilsแต่ฉันไม่จำเป็นต้องdoxygenหรือหรือantmercurial

ด้านล่างคือรายการที่ฉันใช้พร้อมกับการอ้างอิงของพวกเขา แต่แน่นอนระยะของคุณอาจแตกต่างกันไปขึ้นอยู่กับความต้องการของคุณ

$ yum install \
    autoconf automake binutils \
    bison flex gcc gcc-c++ gettext \
    libtool make patch pkgconfig \
    redhat-rpm-config rpm-build rpm-sign \
    ctags elfutils indent patchutils 

0
sudo yum install -y libxml2 libxml2-devel libxslt libxslt-devel

ดูเหมือนว่าจะมีผลข้างเคียงมากขึ้นเมื่อ @ pablo-castellazzi พูดถึงในความคิดเห็นในส่วนคำถามของคุณ คำตอบที่ดีกว่าคือโดยKK PatelหรือScott Likens
user12345

2
คำสั่งที่คุณโพสต์ขอให้ติดตั้งไลบรารีพัฒนา xml และ xslt ในฐานะที่เป็นผลข้างเคียงมันจะติดตั้ง gcc ซึ่งเป็นเครื่องมือสร้างที่สำคัญ
ndemou
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.