1
00:00:00,390 --> 00:00:01,770
Sometimes it might be necessary

2
00:00:01,770 --> 00:00:05,430
that we like to build software from the source code.

3
00:00:05,430 --> 00:00:09,840
After all, most Linux software is open source.

4
00:00:09,840 --> 00:00:13,320
So the software that's packaged in the .rpm and the .deb,

5
00:00:13,320 --> 00:00:14,970
those are pre-compiled.

6
00:00:14,970 --> 00:00:16,410
But as in the previous lesson

7
00:00:16,410 --> 00:00:18,690
when we downloaded the Nmap files,

8
00:00:18,690 --> 00:00:21,300
we're going to actually compile it ourselves.

9
00:00:21,300 --> 00:00:22,200
Now we're not going to go through

10
00:00:22,200 --> 00:00:24,930
and actually make any of the configuration settings,

11
00:00:24,930 --> 00:00:26,130
but we're just going to walk through the steps

12
00:00:26,130 --> 00:00:29,160
of how to compile the source code.

13
00:00:29,160 --> 00:00:33,123
Now let's first just ensure that the Nmap isn't installed.

14
00:00:35,280 --> 00:00:36,430
This'll be the command.

15
00:00:37,830 --> 00:00:38,663
Okay.

16
00:00:39,837 --> 00:00:40,920
All right, next we'll go ahead

17
00:00:40,920 --> 00:00:45,060
and install this GNU Collection Compiler for C++.

18
00:00:45,060 --> 00:00:46,350
Again, we're going to need this compiler

19
00:00:46,350 --> 00:00:48,690
in order to compile the information

20
00:00:48,690 --> 00:00:50,090
that we downloaded for Nmap.

21
00:00:54,540 --> 00:00:57,630
All right, looks like that went through successfully.

22
00:00:57,630 --> 00:00:59,280
The next thing we're going to do, we're going to go

23
00:00:59,280 --> 00:01:03,330
to the Nmap folder that we downloaded previously.

24
00:01:03,330 --> 00:01:07,683
So if we list this out, we see the nmap-7.0.

25
00:01:08,940 --> 00:01:12,180
All right, next, we're going to use the ./configure command,

26
00:01:12,180 --> 00:01:15,180
and what that's going to do, it's going to allow us

27
00:01:15,180 --> 00:01:17,730
to gather system information needed

28
00:01:17,730 --> 00:01:19,680
about the application to be compiled,

29
00:01:19,680 --> 00:01:21,380
and it stores it in the make file.

30
00:01:29,130 --> 00:01:31,380
All right, looks like that went through successfully.

31
00:01:31,380 --> 00:01:32,213
We have Nmap.

32
00:01:35,070 --> 00:01:38,700
All right, next we need to do, actually compile the system

33
00:01:38,700 --> 00:01:39,800
with the make command.

34
00:01:49,804 --> 00:01:52,110
All right, that went through successfully.

35
00:01:52,110 --> 00:01:54,090
Now once we have this system compiled,

36
00:01:54,090 --> 00:01:55,860
we still must install it.

37
00:01:55,860 --> 00:02:00,003
So the last step is we use the make install command.

38
00:02:04,980 --> 00:02:08,910
And voila, Nmap successfully installed.

39
00:02:08,910 --> 00:02:10,509
Now let's test this bad boy out.

40
00:02:15,780 --> 00:02:17,973
So let's see what we got going on here.

41
00:02:18,960 --> 00:02:21,210
All right, looks like it's good to go.

42
00:02:21,210 --> 00:02:23,550
It gave us the information there,

43
00:02:23,550 --> 00:02:27,660
letting us specify different options, host discovery,

44
00:02:27,660 --> 00:02:30,870
scanning techniques, port specification,

45
00:02:30,870 --> 00:02:32,400
service/version detection.

46
00:02:32,400 --> 00:02:35,200
We get this help information once we type out a command

47
00:02:35,200 --> 00:02:38,340
without any options or arguments presented.

48
00:02:38,340 --> 00:02:41,160
So looks like we're good to go there.

49
00:02:41,160 --> 00:02:43,980
Okay, we installed the compiler for this system

50
00:02:43,980 --> 00:02:48,510
in order to download and compile source code directly.

51
00:02:48,510 --> 00:02:52,470
Again, that maximizes flexibility for any administrator,

52
00:02:52,470 --> 00:02:54,990
'cause remember, Linux is open source.

53
00:02:54,990 --> 00:02:57,930
So a lot of the applications and tools that we'll be using

54
00:02:57,930 --> 00:02:59,580
will be open source as well.

55
00:02:59,580 --> 00:03:02,520
So again, that gives us the freedom and flexibility

56
00:03:02,520 --> 00:03:06,240
to change and maximize performance as needed.

57
00:03:06,240 --> 00:03:07,920
That concludes this demonstration.

58
00:03:07,920 --> 00:03:08,850
Thank you for sticking with me,

59
00:03:08,850 --> 00:03:10,650
and I'll see you in the next lesson.

