Hace ya unos cinco años (como pasa el tiempo) publiqué una entrada muy escueta en la que indicaba la forma de instalar los compiladores en Centos y RHEL. Básicamente era instalar vía yum los siguientes paquetes:
# yum install gcc gcc-c++ autoconf automake
Quería ampliar esta información ahora que tenemos Centos 7 y RHEL 7. En este caso, vamos a ver como instalar todo lo necesario para compilar en el sistema junto con el resto de herramientas de desarrollo que también necesitaremos.
Toda la instalación se va a basar en un único comando ya que podemos instalar todos los paquetes a través de un grupo preestablecido de yum llamado «Development Tools«:
# yum group list | grep "Development Tools" Development Tools
Si hacemos una consulta de la información del grupo vemos todos los paquetes que instalarán, entre ellos se encuentran paquetes imprescindibles (autoconf, gcc, gcc++, automake, patch, make) y otros opcionales (cscope, byacc, patchutils, git…):
# yum group info "Development Tools"
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.nfsi.pt
* epel: anorien.csc.warwick.ac.uk
* extras: mirrors.nfsi.pt
* updates: mirrors.nfsi.pt
Group: Development Tools
Group-Id: development
Description: A basic development environment.
Mandatory Packages:
+autoconf
+automake
binutils
+bison
+flex
+gcc
+gcc-c++
gettext
+libtool
make
+patch
pkgconfig
+redhat-rpm-config
+rpm-build
+rpm-sign
Default Packages:
+byacc
+cscope
+ctags
+diffstat
+doxygen
+elfutils
+gcc-gfortran
+git
+indent
+intltool
+patchutils
+rcs
+subversion
+swig
+systemtap
Optional Packages:
ElectricFence
ant
babel
bzr
ccache
chrpath
clips
clips-devel
clips-doc
clips-emacs
clips-xclips
clipsmm-devel
clipsmm-doc
cmake
cmucl
colordiff
compat-gcc-44
compat-gcc-44-c++
compat-gcc-44-g77
cvs
cvsps
darcs
dejagnu
email2trac
expect
ftnchek
gcc-gnat
gcc-objc
gcc-objc++
ghc
git
haskell-platform
imake
javapackages-tools
ksc
libstdc++-docs
lua
mercurial
mock
mod_dav_svn
nasm
nqc
nqc-doc
ocaml
perltidy
python-docs
qgit
rpmdevtools
rpmlint
sbcl
systemtap-sdt-devel
systemtap-server
trac
trac-git-plugin
trac-mercurial-plugin
trac-webadmin
translate-toolkit
Para instalar el grupo de paquetes, tan sencillo como ejecutar.
# yum group install "Development Tools"
Si por algún casual no quisieramos instalar los paquetes opcionales, o quisieramos personalizar los paquetes a instalar del un grupo según categoría (mandatory, optional, default) lo podemos definir con la variable «group_package_types» en el archivo de configuraciónd de yum /etc/yum.conf:
group_package_types List of the following: optional, default, mandatory. Tells yum which type of packages in groups will be installed when 'groupinstall' is called. Default is: default, mandatory