[Linux journey] Part 4 Lesson 5: source code compilation and easy installation
Introduction
1,Part 4 Lesson 5:Compilation of source code to facilitate installation
2,Part 4 Lesson 6:DNS and domain name
Compilation of source code to facilitate installation
This course is relatively easy. After all, is it just a New Year (2015-2016)? How can the new year make everyone one of the top two ~ How can small editors be so bad? Is this a small editor? (Yes -_-#).
In previous courses ([Linux exploration journey] Part 2 Lesson 7: software installation, things like this), we have learned how convenient it is to install software under the Ubuntu Linux release, you can easily use apt-get. This method allows us to download and install most of the software.
Similar to other Linux distributions.
However, some software is not included in the software warehouse, so we can only install it manually, that is, we can only download the source code of the software and compile it to generate executable files.
This method is sometimes complicated. We need to download the source code first. The downloaded source code is usually a compressed package, decompress the compressed package, configure the package, compile the package, and then install the package. I hope this course will allow you to apply some of the previous knowledge to practice. We will explore software compilation step by step.
First try to find the deb installation package
First, we have to declare that the software package installation and other knowledge points involved in this part are based on the Debian Linux release, including Ubuntu.
Other Linux releases, such as Fedora, Redhat, CentOS, and so on, which are not in the Debian family. In fact, the method for installing software is similar, that is, the command used between each Linux release is different, and the software package name is a little different.
Most of the software in Ubuntu can be found in the software repository. You only need to use the apt-get command to install them. However, a small number of newer or still under development or not well-known software has not been included in the software repository, then you can't use apt-get to get it.
In this case, things will become more complicated. In Windows, to install a software, we need to first go to the software's official network and download the installation file ending with .exe.
However, programmers who write software for Linux systems generally do not create installation files similar to those in Windows. Why? Are Linux programmers very lazy?
Yes, Linux programmers are very lazy. Joke. The reason is that Linux has a wide variety of releases (such as Ubuntu, Fedora, CentOS, SUSE, and so on), and each release has a different version number. There are also different processor types (32-bit and 64-bit CPU, ARM architecture, Intel architecture, and so on) to adapt, unlike Windows because it is defined by Microsoft, there are not too many variables. Therefore, it is almost impossible to create an installation file for each type of Linux.
When the software we are looking for is not in the Ubuntu software warehouse, we can try to find the installation package with the suffix ". deb (Debian)" on the official website of the software .. The deb installation package can only be used for Debian operating systems, including Ubuntu. The Redhat family (including Fedora) uses the installation Package suffixed with. rpm (indicating Redhat Package Manager.
However, there is a software that can help convert the rpm installation package to the deb installation package. This software is alien (meaning "aliens", haha ):
# Alien is not installed by default, so you must install it first.
sudo apt-get install alien
# Convert rpm to deb. A xxxx. deb with the same name will be generated after the conversion.
sudo alien xxxx.rpm
# Installation. Note that the deb package converted from alien cannot be installed smoothly in 100%, so it is best to use deb directly if you can find deb.
sudo dpkg -i xxxx.deb
If you have the honor to find the deb installation package of the software on the Internet, download the package and double-click the installation package (or use the following command line: sudo dpkg-I xxxx. deb ).
Then a window will pop up, asking if you are sure to install it and selecting "Install ".
If there is no error in the installation process, it is good. If an error occurs, it may be caused:
Maybe the deb installation package you downloaded does not match your computer environment. The number of digits may be wrong. 32-bit and 64-bit are different.
Maybe you have not installed those dependent software. Because the apt-get tool will automatically download various dependent software, we do not need to do it ourselves. But now you need to install the missing dependent software by yourself. You can install the software as prompted.
If you cannot find the deb installation package, you can only: Get the source code of the software, and then break it (Oh, No, It is compiled by yourself ).
Next let's take a look at how to start from the source code until the compilation and installation are complete.
There is no other method. Select compile and install
If the software you want to install is not in the software warehouse, and you cannot find the corresponding deb installation package on the Internet, you can only go back to the Stone Age and install it by compiling the source code.
What is compilation?
In short, compilation is the process of converting the source code of a program into an executable file. For example, the raw materials used for making cakes (such as eggs and flour) are source code, and the final cake is an executable file. In this metaphor, compilation is the process of making a cake.
If it is complicated, it cannot be said.
Most Linux programs are open-source. We can easily obtain their source code and compile it into executable files suitable for our computer and operating system attributes.
The steps for compiling and installing software are different depending on the software. The compilation and installation of some software is very complicated and may drive you crazy (especially some non-standard and non-mainstream software) and requires a lot of preparation work. The installation steps are described in the general installation manual. Even so, sometimes it will make you bigger, and you can only solve small errors one by one. There is no way. Who makes programmers love it? What is the significance of a life without tossing.
Compile the program step by step
You need to install the compilation tool before compiling. In Ubuntu, there is a way to install the compilation-related tool at one time, that is, build-essential (build refers to "build" or "compile, "essential" means "necessary", as its name implies, "necessary tools for building/compiling"). Run the following command to install:
sudo apt-get install build-essential
A command is done, and the mighty and handsome display of Linux is exhausted. Windows has basically been crying in the toilet ~ (The Daily black Windows task is completed again, coke)
After installing the basic tools required for compilation, we can start the project.
Let's use a small software as an example. This software is htop. We have learned the top command before. It can view various processes running on the computer, memory usage, cpu usage, and so on. It is similar to the Job Manager in Windows. Htop is a small software similar to top.
Although the htop software can also be installed from apt-get. However, to demonstrate the compilation and installation process, we can use it (poor baby ).
The first step to go to the software Official Website: http://hisham.hm/htop?
Then click on the left [Downloads/Git], the current software development source code is hosted on Github, Github related page: https://github.com/hishamhm/htop (you can go up to see, familiar with the world famous Github) <喎?http: www.bkjia.com kf ware vc " target="_blank" class="keylink"> Authorization + authorization/Ww/Ljxyr205rfF1No8L3A + DQo8cD4mbmJzcDs8L3A + DQo8cD48YSBocmVmPQ = "http://hisham.hm/htop/releases" target = "_ blank" title = "\"> http://hisham.hm/htop/releases
Go to the latest stable version: 1.0.3 directory
Http://hisham.hm/htop/releases/1.0.3/
Download the file
htop-1.0.3.tar.gz
After the download, We decompress the package using the previously learned decompression method:
tar zxvf htop-1.0.3.tar.gz
Decompress and generate the htop-1.0.3 directory.
Then go to the directory:
cd htop-1.0.3
If you use the ls command to list files, you will find many files. We don't need to care about these details.
Among the many files, we are interested in one file:
configure
Configure is the meaning of "configuration" in English. As the name suggests, it is the preparation of some configuration for software compilation.
Run it:
./configure
Configure will analyze your computer and check whether all necessary tools are installed. It takes some time to execute it because it requires a lot of detection.
An error occurred during result Detection:
The error is:
-Lncursesw not found
The prompt message is:
Error: You may want to use -- disable-unicode or install libncursesw
"Error: you may want to use the -- disable-unicode parameter or install libncursesw"
First, I tried to install libncursesw on the Internet. Directly use the first suggestion: Use the -- disable-unicode Parameter
Run configure again (with the -- disable-unicode parameter)
./configure --disable-unicode
This will be okay.
Then we can start compiling. Run the make command:
make
No error. The compilation is complete.
Then, run the make install command (add sudo to install the software with the root permission ):
sudo make install
No problem. Installation is complete. Run the htop software and try:
htop
Success! Close the work ~
The next lesson will be difficult. Let's take a good look at the ins and outs of IP addresses, domain names, and DNS domain name resolution systems.
Summary
Most Linux releases can be installed with the package management tool apt-get (for Debian ).
Some software cannot be installed through apt-get, because it is not included in the Ubuntu software repository. In this case, we can try to find the deb installation package of the software on the Internet.
If neither method works, we can only compile and install the method from the source code. The general steps are as follows:
Download the source code of the program from the Internet (usually compressed into the .tar.gz format ).
Decompress the compressed package (tar zxvf xxx.tar.gz)
Run the configure file in the decompressed Folder:./configure
Run make to compile
Run sudo make install to complete installation
Part 4 Lesson 6 advance notice
Today's class is here. Come on!
In the next lesson, we will learn:DNS and domain name