Nie można zainstalować programu build-essential na CentOS

67

Po uruchomieniu polecenia:

sudo apt-get install build-essential

Otrzymuję następujący komunikat o błędzie:

Reading Package Lists... Done
Building Dependency Tree... Done
E: Couldn't find package build-essential
Waley Chen
źródło
1
Jaka dystrybucja (Ubuntu? Debian?) I wersja? Jakie repo?
2
Czy używasz jądra Red Hat w dystrybucji Debian lub Ubuntu? A może prowadzisz dystrybucję Red Hat? Jeśli prowadzisz dystrybucję Red Hat, powinieneś używać yumlub up2date(w zależności od wersji, która jest odpowiednia).
sarnold
1
Dzięki za całą waszą pomoc chłopaki! Googling, jak zainstalować niezbędne do budowania CentOS, wskazał mi właściwy kierunek.
Waley Chen,
1
Oto cmd: sudo mniam zainstaluj -y libxml2 libxml2-devel libxslt libxslt-devel
Waley Chen
1
nie zapomnij dodać tego jako odpowiedzi i zaakceptuj go, gdy oprogramowanie stosu na to pozwoli. :)
sarnold,

Odpowiedzi:

110

Wierzę, że to nadal powinno działać.

sudo yum groupinstall 'Development Tools'
Scott Likens
źródło
5
Spowoduje to zainstalowanie wszystkich dostępnych narzędzi programistycznych, tylko FYI
user2720864
3
Zobacz yum group info "Development Tools"listę zainstalowanych pakietów
użytkownik12345
1
To dużo daleko od wszystkich narzędzi programistycznych, na wypadek gdybyś się martwił. To głównie podstawy c / c ++ z automake, autoconf itp.
Barry Kelly
1
Ale jeśli potrzebujesz tylko konfiguracji / make / make install do działania, może to wciąż być za dużo (np. Zawiera git i subversion). Lepiej zacząć od instalacji
mniszka
zależy to od potrzebnego „języka programowania”, ale jeśli spodziewasz się skompilować c ++, będziesz potrzebować w wersji PLUS, glibc-devela może make… mniam grupy są bardzo gówniane!
Sandburg
43
yum install gcc gcc-c++ make 

Działa to build-essentialpodobnie jak w CentOS.

Ketan Patel
źródło
2
openssl-develmoże przypadkowo wciągnąć pożądane rzeczy, ale nie jest właściwie build-essentialsam w sobie.
tripleee
4

Metapakiet build-essentialjest dostępny w Debianie w celu zebrania wszystkich powszechnie niezbędnych niezbędnych narzędzi do budowania w łańcuchu kompilacji Debiana, w tym tych, których potrzebujesz do tworzenia .debpakietów. Centos używa zupełnie innego menedżera pakietów i nie zapewnia bezpośrednio czegoś takiego; musisz ręcznie zainstalować poszczególne komponenty zestawu narzędzi ( gcc, makewspólne biblioteki programistyczne, dokumentację itp., a także oczywiście narzędzia do tworzenia pakietów RPM, jeśli chcesz to zrobić).

Jeśli urządzenie zostało upuszczone .deblub RPM rzeczy, gcc, gcc-c++, glibc-devel, i makepowinien dostać odpowiednie pakiety CentOS komunikatu.

potrójny
źródło
Zgodnie ze starym komentarzem @ PabloCastellazzi możesz uzyskać pakiet narzędzi RPM z pakietem rpm-build. Rzeczywista nazwa narzędzia to rpmbuild. Aby uzyskać więcej informacji, zobacz np. Wiki.centos.org/HowTos/SetupRpmBuildEnvironment
tripleee
1

Połączyłem zaakceptowane rozwiązanie od Scotta Likensa z komentarzem użytkownika12345 i przed instalacją najpierw zapoznałem się z tym, co było w grupie „Narzędzia programistyczne”.

Jak wskazał użytkownik12345, możesz to zrobić za pomocą:

$ yum group info "Development Tools"

I chciał zainstalować pakiety jak autoconfi automakea binutils, ale nie potrzebują doxygenlub antlub mercurial.

Poniżej znajduje się lista, której użyłem, wraz z ich zależnościami, ale oczywiście przebieg może się różnić w zależności od TWOICH potrzeb.

$ 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 
m0j0
źródło
0
sudo yum install -y libxml2 libxml2-devel libxslt libxslt-devel
Waley Chen
źródło
To wydaje się bardziej efektem ubocznym, jak wspomniano w komentarzach @ pablo-castellazzi w sekcji pytań. Lepszą odpowiedzią jest imo: KK Patel lub Scott Likens
11.04.2016
2
Polecenie, które publikujesz, prosi o zainstalowanie bibliotek programistycznych xml i xslt. Jako efekt uboczny zainstaluje gcc, które jest niezbędnym narzędziem do budowania.
ndemou