Monday, December 28, 2020
Maximizing Ubuntu Virtual Host Screen in Virtual Box
Sunday, December 27, 2020
Chapter 33 : Compile and Install GCC Pass-2 - Cross Compiling Temporary Tools
Chapter 32 : Compile and Install Binutils Pass-2 : Cross Compiling Temporary Tools
Chapter 31 : Compile and Install Xz - Cross Compiling Temporary Tools
Chapter 30 : Compile and Install Tar - Cross Compiling Temporary Tools
Chapter 29 : Compile and Install Sed - Cross Compiling Temporary Tools
Chapter 28 : Compile and Install Patch - Cross Compiling Temporary Tools
Chapter 27 : Compile and Install Make - Cross Compiling Temporary Tools
Chapter 26 : Compile and Install Gzip - Cross Compiling Temporary Tools
Chapter 25 : Compile and Install Grep - Cross Compiling Temporary Tools
Chapter 24 : Compile and Install Gawk - Cross Compiling Temporary Tools
Chapter 23 : Compile and Install Findutils - Cross Compiling Temporary Tools
Chapter 22 : Compile and Install File - Cross Compiling Temporary Tools
Chapter 21 : Compile and Install Diffutils - Cross Compiling Temporary Tools
Chapter 20 : Compile and Install CoreUtils - Cross Compiling Temporary Tools
Chapter 19 : Compile and Install Bash - Cross Compiling Temporary Tools
Chapter 18 : Compile and Install Ncurses - Cross Compiling Temporary Tools
Chapter 17 : Compiling and Installing M4 - Cross Compiling Temporary Tools
Chapter 16 : Compile and Install Libstdc++ - Compiling a Cross-Toolchain
Chapter 15 : Compile and Install Glibc - Compiling a Cross-Toolchain
Saturday, December 26, 2020
Chapter 14 : Installation of Linux API Headers
Hi,
In this chapter we are going to compile linux API headers.
Before we proceed further, let us make "lfs" user a sudo user.
Please check out one of my posts to make a user a sudo user using the following link given below..
Creating a directory "/usr" in /mnt/lfs
The above command would prompt to key in the password, provide the one associated with the user account.
Let the user "lfs" own the directory /mtn/lfs/usr
Now login back as "lfs" user and perform the following actions...
Unpack the package tar ball linux-5.8.3.tar.xz
At the time of writing, this package was at version 5.8.3, please check the version when you perform the following command.
Change directory to linux-5.8.3
The extracted package may or may not contain some stale files, we got be sure that there are no such files while compiling this package... to make sure the extracted folder do not contain any stale files, use the following command.
Should not be having any problem in executing above command.
Now execute the following set of commands to complete the linux API installation.
if you like a detailed explanation on how to install linux API headers, you can refer the following link...
Chapter 13 : Compile and Install GCC - Compiling a Cross-Toolchain
Hi,
In this chapter, we are going to discuss on how to compile the GCC which GNU Compiler Collection and cross tool chain.
Package Name | Version |
gcc | 10.2.0 |
mpfr | 4.1.0 |
gmp | 6.2.0 |
mpc | 1.1.0 |
Chapter 12 : Compile and Install BinUtils - Compiling a Cross-Toolchain
Hi,
In this chapter, I would be discussing on how to compile the bin utils package
Use the following command to unpack the package...
The above command would unpack the package in a folder called binutils-2.35.
Once the command execution is completed, we have to change directory to that folder.
The linux from scratch suggest that we should be compiling the packages using a dedicated directory.
To compile binutils, let us create a directory called "build" inside binutils-2.35
Change directory to build directory
../configure --prefix=$LFS/tools \
--with-sysroot=$LFS \
--target=$LFS_TGT \
--disable-nls \
--disable-werror
Execute the following command at the prompt to compile the binutils
If the above command execution is successful then execute the following command to install binutils
Chapter 4 : Creating FSTAB entries to automate mounting of partitions of the disk during system boot
Hi,
In this post/chapter I am going to talk about how to automate the process of mounting of partitions of the disk...
We are going to use the partitions created in chapter-02 to mount automatically , to recollect let me summarize the partitions here briefly...
Disk Partition | Partition Name | Partition Type | Size of the Partition |
/dev/sde1 | boot | ext2 | 100 MB |
/dev/sde2 | root | ext4 | 30 GB |
/dev/sde3 | swap | swap | 9.9 GB |
Disk Partition | Partition UUID | Partition Type |
/dev/sde1 | 86fa30de-9907-4ced-a5ba-c6043ae04aee | ext2 |
/dev/sde2 | d9bfa86a-9ba8-4681-9bd0-3c3e25ee9ce3 | ext4 |
/dev/sde3 | 3ce6bf45-e899-4c48-94b4-0c11305c2353 | swap |
File System | Denotes the partition name or the UUID of the partition |
Mount Point | The location at which the partition is mounted |
Type | Type of the file system on the partition |
Options | Denotes the options available in the manual page of fdisk |
Dump | Denotes the flag for the back up, 0=no-backup, 1=yes-backup |
Pass | - |
File System | Mount Point | Type | Options | Dump | Pass |
UUID=d9bfa86a-9ba8-4681-9bd0-3c3e25ee9ce3 | /mnt/lfs | ext4 | defaults | 0 | 1 |
UUID=86fa30de-9907-4ced-a5ba-c6043ae04aee | /mnt/lfs/boot | ext2 | defaults | 0 | 1 |
UUID=3ce6bf45-e899-4c48-94b4-0c11305c2353 | swap | swap | defaults | 0 | 0 |
Chapter 11 : Setting up the environment for the "lfs" user
Hi,
In this chapter, we are going to setup the environment for the "lfs" user.
As part of setting up the environment, we are going to create two files namely
1. .bash_profile
2. .bashrc
3. .profile
Open a terminal and execute the following commands, keep that in mind...now you should have logged in as lfs user at the terminal.
cat > ~/.bash_profile << "EOF"
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
EOF
Chapter 10 : Switching to lfs User
Hi,
In this post/chapter we are going to switch the user from the one we logged in to "lfs" user and from now on all the operations should be performed as "lfs" user.
To swith user, use the following command...
The above command would prompt you to provide the password associated with the user, provide the one associated with user.
Chapter 9 : Creating Symbolic links to tools folder
Hi,
In this chapter we are going to create a symbolic link to "tools" folder.
To create a link, use the commands below..
Chapter 8 : Downloading the sources
Chapter 7 : Creating "sources" and "tools" Directory
Hi,
In this chapter I would like to disclose the creation of "sources" and "tools" directory at the location /mnt/lfs
Use the following commands to create the above mentioned directories
Along with the creation of directories, we should also change the file permissions of the directories created...
To do that, use the following commands...
The purpose of changing the file permissions is to make the folders sticky, which means any user can perform read and write operations but only the owner can delete the file in the specified directory.
Chapter 5 : Automating Export of LFS Environment Variable
Hi,
In this post/chapter I am going to talk about how the export the environment variable required to build a linux system from scratch.
This post/chapter is going to be the shortest of all still it is mandatory for the process.
Start your virtual host from your virtual box, and login as the user.
After you login, Open a terminal and edit the ".profile" of the user using the following command.
Append the file with the following...
export LFS=/mnt/lfs
Save the file and exit.
Well that is it, next time you login you do not have to worry about exporting this variable again, this variable is made available when the profile of the user is loaded.
Chapter 6 : Creating lfs User Account
Hi,
In this post let us create a dedicated user for the process of building the linux system from scratch.
Let the name of the user be "lfs"
Well before we add the user, let us create a user group and let the group name be "lfs"
Open a terminal and key in the following command...
the above command may prompt you to key in the password, provide the one associated with the account.
Now, let us create the user..
The command to create a user is given below with necessary options in it.
Chapter 3 : Mounting the Partitions of the Disk
Hi,
This posts discusses on exporting the environment variable "LFS" and Mounting the partitions that we created on the chapter-02 for further proceedings...
Let us use the following command to export the variable, open an terminal and key in the following command
The above location is the mount point where the partitions are be to mounted...
Use the following command to a directory named "lfs" under the directory "/mnt"
the above command, if prompted for password key in the password associated with the user
Use the following command to mount the lfs partition "/dev/sde2" to the location "/mnt/lfs"
As a result of this action you can find a directory called "boot" and "lost+found" at the lfs mount point location
The location /boot is the mounting point for the boot partition "/dev/sde1".
Now mount the boot partition at the mount point, using the following command
Friday, December 25, 2020
Chapter 2 : Creat, Partitioning and Format a Virtual Hard Disk
Addressing Modes of 8080 / 8085 MicroProcessor
Hi, In this post I am going to talk about different addressing modes of 8080/8085...without much talking let us get into the topic. Ther...
-
Many of us have been using Eclipse IDE since we started developing programs in variety of languages but as a developer we never bothered th...
-
Hi, In this post, I am going to talk about how to perform static code analysis of any java project based on ANT build. The Prerequisite...
-
In this post I am going to list out the detailed instruction set available for 8080 and 8085 There isn't much difference between the i...