Linux is an operating system suited for software development. In Linux, you can build and run various software written in different languages, such as C, C++, Python, and Java.
However, in default, mainstream Linux distributions do not bundle development tools – they have to be installed separately through the package manager upon successful installation of the operating system.
Installing the development tools are easy, requiring only a few commands in the terminal. You also need to have internet connection as the packages are being downloaded on the fly after you issued the install command.
In CentOS Linux, the current package manager is called “dnf”, which is short of “dandified Yum”. DNF based on RPM (RedHat Package ManagerA) and offers greater speed and stability compared to Yum, which it superseded. Also, in CentOS, the “build-essentials” metapackage is called “Development Tools” and can be installed by issuing this following command in the terminal:
$ sudo dnf group install "Development Tools"
In Ubuntu, the installation and uninstallation of packages are handled by APT, or “Advanced Packaging Tool”. APT is fast, easy to use, and designed to avoid dependency hell on Debian-based distributions.
APT is designed around DEB packages, but could also be ported to handle other package systems (such as RPM). In Ubuntu, you can install all the necessary packages for software development by installing build-essentials through this following command:
$ sudo apt-get update $ sudo apt-get install build-essential
In short, the package management systems of both CentOS and Ubuntu is easy to use and allows you to install necessary packages for software development. They also offer a graphical user interface if you are using desktop window managers.
By using the package manager, you can avoid situations where you are stuck with the older software version as the latest packages are always available in the package repository.