Install build tools linux

Install C, C++ Compiler and Development (build-essential) Tools in Debian/Ubuntu

Most Linux system administrators and engineers are required to know some basic programming to help them in their daily tasks. If they want to go one step further into the development area as well (either as kernel or application programmers), then C or C++ is the best place to start.

Install C, C++ Compiler and Build Essential Tools

In this article we will explain how to install C and C++ compilers and it’s Development Tools (build-essential) related packages such as make, libc-dev, dpkg-dev, etc. in Debian and derivatives such as Ubuntu and Linux Mint.

The build-essential software contains an informational list of software’s which are treated as important for building Debian packages including gcc compiler, make and other needed tools.

​What is a Compiler?

Simply put, a compiler is a software program that processes instructions written in a programming language and creates a binary file that the machine’s CPU can understand and execute.

In Debian-based distributions, the most well-known C and C++ compilers are gcc and g++, respectively. Both programs were developed and are still maintained by the Free Software Foundation through the GNU project.

​Installing C, C++ Compiler and Development Tools (build-essential)

If your system don’t have build-essential package installed in your system by default, you can install the latest available version from the default distribution repositories as follows:

Now we’re ready to start typing C or C++ code… or almost. We’re about to show you yet another tool to boost your development toolset.

Speeding Up C and C++ Compilations

When you know you’ll need to compile a program, make changes, then recompile again it’s great to have a tool like ccache, which as you will probably guess based on its name, is a compiler cache.

It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done again. Besides C and C++, it also supports Objective-C and Objective-C++. The only limitations are:

  1. Only supports caching the compilation of a single C/C++/Objective-C/Objective-C++ file. For other types of compilations (multi-file compilation, linking, to name a few examples), the process will end up running the real compiler.
  2. Some compiler flags may not supported. If such a flag is detected, ccache will silently fall back to running the real compiler.

Let’s install this tool:

Install CCache in Debian

In the next section we will see some examples of C and C++ code compilation with and without ccache.

Testing C and C++ with a sample Program

Let’s use the classical example of a very basic C program that adds two numbers. Open your favorite text editor and enter the following code, then save as sum.c :

To compile the above code into an executable named sum in the current working directory use the -o switch with gcc:

If you want to take advantage of ccache, just prepend the above command with ccache, as follows:

Then run the binary:

Compile C++ Program in Debian

While this basic example does not allow us to see the full power of ccache, for larger programs you’ll quickly realize what a great tool it is. The same applies for C++ programs as well.

Читайте также:  64 bit операционные системы linux

Summary

In this guide we have shown how to install and use the GNU compilers for C and C++ in Debian and derivatives. In addition, we explained how to use a compiler cache to speed up recompilations of the same code. While you can refer to the online man pages for gcc and g++ for further options and examples, don’t hesitate to drop us a note using the form below If you have any questions or comments.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

We are thankful for your never ending support.

Источник

Install build tools linux

Copy raw contents

Installing Build Tools

This page describes setting up the build environment for QMK. These instructions cover AVR processors (such as the atmega32u4).

Note: If it is your first time here, Check out the «Complete Newbs guide» instead

To ensure you are always up to date, you can just run sudo util/install_dependencies.sh . That should always install all the dependencies needed. This will run apt-get upgrade .

You can also install things manually, but this documentation might not be always up to date with all requirements.

The current requirements are the following, but not all might be needed depending on what you do. Also note that some systems might not have all the dependencies available as packages, or they might be named differently.

Install the dependencies with your favorite package manager.

Debian / Ubuntu example:

Fedora / Red Hat example:

If you’re on NixOS, or have Nix installed on Linux or macOS, run nix-shell from the repository root to get a build environment.

By default, this will download compilers for both AVR and ARM. If you don’t need both, disable the avr or arm arguments, e.g.:

If you’re using homebrew, you can use the following commands:

This is the recommended method. If you don’t have homebrew, install it! It’s very much worth it for anyone who works in the command line. Note that the make and make install portion during the homebrew installation of avr-libc can take over 20 minutes and exhibit high CPU usage.

Windows with msys2 (recommended)

The best environment to use, for Windows Vista through any later version (tested on 7 and 10), is msys2.

  • Install msys2 by downloading it and following the instructions here: http://www.msys2.org
  • Open the MSYS2 MingGW 64-bit shortcut
  • Navigate to your qmk checkout. For example, if it’s in the root of your c drive:
  • $ cd /c/qmk_firmware
  • Run util/msys2_install.sh and follow the prompts

Windows 10 (deprecated)

These are the old instructions for Windows 10. We recommend you use MSYS2 as outlined above.

If you have Windows 10 with Creators Update or later, you can build and flash the firmware directly. Before the Creators Update, only building was possible. If you don’t have it yet or if are unsure, follow these instructions.

Windows Subsystem for Linux

In addition to the Creators Update, you need Windows 10 Subystem for Linux, so install it following these instructions. If you already have the Windows 10 Subsystem for Linux from the Anniversary update it’s recommended that you upgrade it to 16.04LTS, because some keyboards don’t compile with the toolchains included in 14.04LTS. Note that you need to know what your are doing if you chose the sudo do-release-upgrade method.

Читайте также:  Брандмауэр windows как войти

If you already have cloned the repository on your Windows file system you can ignore this section.

You will need to clone the repository to your Windows file system using the normal Git for Windows and not the WSL Git. So if you haven’t installed Git before, download and install it. Then set it up, it’s important that you setup the e-mail and user name, especially if you are planning to contribute.

Once Git is installed, open the Git Bash command and change the directory to where you want to clone QMK; note that you have to use forward slashes, and that your c drive is accessed like this /c/path/to/where/you/want/to/go . Then run git clone —recurse-submodules https://github.com/qmk/qmk_firmware , this will create a new folder qmk_firmware as a subfolder of the current one.

The Toolchain setup is done through the Windows Subsystem for Linux, and the process is fully automated. If you want to do everything manually, there are no other instructions than the scripts themselves, but you can always open issues and ask for more information.

  1. Open «Bash On Ubuntu On Windows» from the start menu.
  2. Go to the directory where you cloned qmk_firmware . Note that the paths start with /mnt/ in the WSL, so you have to write for example cd /mnt/c/path/to/qmk_firmware .
  3. Run util/wsl_install.sh and follow the on-screen instructions.
  4. Close the Bash command window, and re-open it.
  5. You are ready to compile and flash the firmware!

Some Important Things to Keep in Mind

  • You can run util/wsl_install.sh again to get all the newest updates.
  • Your QMK repository need to be on a Windows file system path, since WSL can’t run executables outside it.
  • The WSL Git is not compatible with the Windows Git, so use the Windows Git Bash or a windows Git GUI for all Git operations
  • You can edit files either inside WSL or normally using Windows, but note that if you edit makefiles or shell scripts, make sure you are using an editor that saves the files with Unix line endings. Otherwise the compilation might not work.

Windows (Vista and Later) (Deprecated)

These are the old instructions for Windows Vista and later. We recommend you use MSYS2 as outlined above.

  1. If you have ever installed WinAVR, uninstall it.
  2. Install MHV AVR Tools. Disable smatch, but be sure to leave the option to add the tools to the PATH checked.
  3. If you are going to flash Infinity based keyboards you will need to install dfu-util, refer to the instructions by Input Club.
  4. Install MinGW. During installation, uncheck the option to install a graphical user interface. DO NOT change the default installation folder. The scripts depend on the default location.
  5. Clone this repository. This link will download it as a zip file, which you’ll need to extract. Open the extracted folder in Windows Explorer.
  6. Open the \util folder.
  7. Double-click on the 1-setup-path-win batch script to run it. You’ll need to accept a User Account Control prompt. Press the spacebar to dismiss the success message in the command prompt that pops up.
  8. Right-click on the 2-setup-environment-win batch script, select «Run as administrator», and accept the User Account Control prompt. This part may take a couple of minutes, and you’ll need to approve a driver installation, but once it finishes, your environment is complete!
Читайте также:  Обновление до профессиональной версии windows 10

If you have trouble and want to ask for help, it is useful to generate a Win_Check_Output.txt file by running Win_Check.bat in the \util folder.

If this is a bit complex for you, Docker might be the turn-key solution you need. After installing Docker, run the following command at the root of the QMK folder to build a keyboard/keymap:

On Windows Docker seems to have issues with the VOLUME tag in Dockerfile, and $(‘pwd’) won’t print a Windows compliant path; use full path instead, like this:

This will compile the targeted keyboard/keymap and leave it in your QMK directory for you to flash.

If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that’s ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the vagrant guide.

Источник

How To Install Development Tools In Linux

In this brief tutorial, we will be discussing how to install development tools in Linux distributions such as Arch Linux, CentOS, RHEL, Fedora, Debian, Ubuntu, and openSUSE etc. These development tools includes all necessary applications, such as GNU GCC C/C++ compilers, make, debuggers, man pages and others which are needed to compile and build new software and packages.

Install Development Tools In Linux

The developer tools can be installed either individually one by one or all at once. We are going to install all at once to make things much easier.

1. Install Development Tools In Arch Linux and derivatives

To install development tools in Arch Linux and its derivatives like Antergos, Manjaro Linux, just run:

The above command will install the following package(s) in your Arch-based systems.

Just hit ENTER to install all of them.

Install Development Tools In Arch Linux

If you want to install to a specific package group, just type its number and hit ENTER to continue installation.

2. Install Development Tools In RHEL, CentOS, Fedora

To install development tools in Fedora, RHEL and its clones such as CentOS, Scientific Linux, run the following commands as root user.

The above command is going to install all necessary developer tools, such as:

  1. autoconf
  2. automake
  3. bison
  4. byacc
  5. cscope
  6. ctags
  7. diffstat
  8. doxygen
  9. elfutils
  10. flex
  11. gcc/gcc-c++/gcc-gfortran
  12. git
  13. indent
  14. intltool
  15. libtool
  16. patch
  17. patchutils
  18. rcs
  19. subversion
  20. swig

Install Development Tools In RHEL, CentOS

3. Install Development Tools In Debian, Ubuntu and derivatives

To install required developer tools in DEB based systems, run:

This command will all necessary packages to setup the development environment in Debian, Ubuntu and its derivatives.

  1. binutils
  2. cpp
  3. gcc-5-locales
  4. g++-multilib
  5. g++-5-multilib
  6. gcc-5-doc
  7. gcc-multilib
  8. autoconf
  9. automake
  10. libtool
  11. flex
  12. bison
  13. gdb
  14. gcc-doc
  15. gcc-5-multilib
  16. and many.

Install Development Tools In Debian, Ubuntu

You now have the necessary development tools to develop a software in your Linux box.

If you don’t like this method to install the development tools, there is also a script named “mangi script” available to easily setup development environment in DEB based systems such as Ubuntu, Linux Mint and other Ubuntu derivatives. For more details, refer the following guide.

4. Install Development Tools In openSUSE/SUSE

To setup development environment in openSUSE and SUSE enterprise, run the following commands as sudo or root user:

Verifying Installation

Now, Let us verify the development tools have been installed or not. To do so, run:

verify if the development tools are installed

As you see in the above output, the development tools have been successfully installed. Start developing your applications!

Источник

Оцените статью