LTIB: Linux Target Image Builder
Freescale Provides I.MX6 Of BSP Development kit , Can be in Freescale Download to . In order to be consistent with the version provided by Tianjian , This article uses BSP The version is ：L3.0.35_4.1.0_130816_source, The kernel of this version is 3.0.35 Version of ,u-boot yes 2009.8 Version of . Use this version of BSP We can make full use of the source code package provided by Tianjian , Refer to Tianjian's source code package for transplantation , Later, if you have time, you can transplant a newer version of u-boot and kernel. This paper focuses on how to 64 Bit ubuntu-12.04 LTS build LTIB development environment .
1. LTIB install
LTIB The installation is very convenient , Here are the specific steps ：
Step1. download Freescale official BSP
I am using BSP edition ：L3.0.35_4.1.0_130816_source.tar.gz. The kernel of this version is 3.0.35 Of , The kernel version provided by Tianjian is the same as that of this version BSP It's consistent , It's better to download the corresponding documents as well , The package name is ：L3.0.35_4.1.0_docs.tar.gz. These two files can Freescale Found on the official website , however Freescale Recently updated BSP, If you can't find this version, you can download it from my Internet disk ,csdn I can't upload such a large file , The link address is as follows ：
Step2. decompression BSP Installation package
tar zxf L3..35_4..0_130816_source.tar.gz
Step3. install LTIB
Then follow the prompts , Accept the protocol and specify the installation path , The path can be set according to your own situation , In this paper, the path of setting the top is as follows ：
The installation will take a few minutes , Please be patient ...
2. LTIB compile
Even though Freescale The detailed configuration document is given , But in 64 position ubuntu12.04 Compiled on LTIB I met all kinds of problems when I was young , Afraid of forgetting , Record here to share with you . Here are the various problems and solutions encountered in the compilation process .
Step1. Install dependency packages
LTIB Compilation depends on some applications , Here, the files that need to be installed are put into the script , In fact, from BSP It's from the documents of , The details are as follows ：
# Install packages needed by LTIB
sudo aptitude -y install gettext libgtk2.-dev rpm bison m4 libfreetype6-dev
sudo aptitude -y install libdbus-glib--dev liborbit2-dev intltool
sudo aptitude -y install ccache ncurses-dev zlib1g zlib1g-dev gcc g++ libtool
sudo aptitude -y install uuid-dev liblzo2-dev
sudo aptitude -y install tcl dpkg
sudo aptitude -y install asciidoc texlive-latex-base dblatex xutils-dev
# Packages required for -bit Ubuntu
# Do "uname -a" and see if the word "x86_64" shows up.
if uname -a|grep -sq 'x86_64'; then
sudo aptitude -y install ia32-libs libc6-dev-i386 lib32z1
# The following recommended for Linux development.
# They are not required by LTIB.
sudo aptitude -y install gparted emacs22-nox openssh-server
sudo aptitude -y install nfs-common nfs-kernel-server lintian
sudo aptitude -y install git-core git-doc git-email git-gui gitk
sudo aptitude -y install diffstat indent tofrodos fakeroot doxygen uboot-mkimage
sudo aptitude -y install sendmail mailutils meld atftpd sharutils
sudo aptitude -y install manpages-dev manpages-posix manpages-posix-dev linux-doc
sudo aptitude -y install vnc4server xvnc4viewer
sudo aptitude -y install texinfo
Save the above instructions to a text file , Such as auto_install.sh, Not auto_install.sh Tianjia executable authority ：
chmod a+x auto_install.sh
Then execute the script ：
The password is required for execution . If you are prompted aptitude If not, consider using apt-get, You can also install the command , After installation, re execute the above auto_install.sh, It is widely spread on the Internet that this instruction should be used to manage software dependency ratio apt-get Better to use , Installation method: ：
sudo apt-get install aptitude
Scripts take a long time to execute , It may take about half an hour , Please be patient .
notes ： When you install these packages , Because the source is not good , There may be a problem downloading , You can refer to 《i.MX6 Ubuntu12.04 Compiled on LTIB.pdf》 In the update sourcelist.
Step2. Install patches
Freescale Provide this set of BSP It's based on ubuntu9.04 Of , Now we use ubuntu12.04, When the system detects whether the software package is installed, it changes , It can be done by patch To solve this problem ：
#!/usr/bin/env bash # get the patch tarball and untar it
wget -O ubuntu-ltib-patch.tgz https://community.freescale.com/servlet/JiveServlet/downloadBody/93454-102-3-2834/ubuntu-ltib-patch.tgz
tar -xzvf ubuntu-ltib-patch.tgz # execute the script which do the patching
Save the above instructions as a patch file patch-ltib-ubuntu12.04.sh, And add executable permissions to the location ：
chmod a+x patch-ltib-ubuntu12..sh
Copy the patch script to ltib Installation directory （ This article is about /home/girlkoo/Projects/L3.0.35_4.1.0/ltib）, Then execute the script ：
Patch installation is very fast , But relying on the Internet , If the network speed is not good, it can be executed separately according to the instructions .
Step3. add to sudo
Carry out orders ：
stay root ALL=(ALL:ALL) ALL Add the following at the end of the file ：
girlkoo ALL = NOPASSWD: /usr/bin/rpm, /opt/freescale/ltib/usr/bin/rpm
Of course ,girlkoo Change to your own user name .
Then press ctrl+O Save the above , Just use the default file name , Directly enter , then ctrl+X sign out .
( notes ： I don't know what the result is , Here's what I did sudo visudo, After the change , preservation , sign out )
Step4. Check the system path
Check /usr/include Is there any sys Catalog , If not, execute the following command ：
sudo ln -s x86_64-linux-gnu/sys sys
Step5. compile LTIB
compile LTIB It's very simple , Just switch to LTIB And execute the following command ：
But the compilation process downloads the file , So the speed is slow , The way to save time is to add the unzipped installation package pkgs Each file in the file （ about 1G） copy to /opt/freescale/pkgs Under the table of contents , So you can save a lot of , Just download a few patch, The specific operation is as follows ：（ Is the following path wrong ？ Should be ：cd L3.0.35_4.1.0_130816_source/pkgs）
cp * /opt/freescale/pkgs/
chmod a-x *
then LTIB Execute under the installation directory LTIB The compiler instruction of , namely ：
I will synchronize the pkgs The folder is placed on Baidu cloud disk , If you encounter a file download failure, you can download the corresponding file from my network disk , Then copy it to /opt/freescale/pkgs Under the directory . The address of the network disk is ：
Error handling ：
- according to ltib in log We know it is permission denied, Then enter the root jurisdiction , But the prompt can't enter ,cannot execute **: no such file or directory. therefore vi /etc/passwd, modify root:x:0:0:root:/root:** To oot:x:0:0:root:/root:/bin/bash, Will prompt ./ltib Should not be in root Do... Within the authority
- Look again log, Also prompt in compile m4 There's something wrong with it . So it came to log What is prompted in the file config Turn off... In the configuration file M4 Compilation of ( notes ： Open for y, Turn off for not set Same as the kernel , You can't change the format here , Such as adding notes , Otherwise, there will be no recognition ,TODO: stay check)
When all the files are ready , Can Enter the following interface ：
If you can see this interface ,LTIB It's almost done , Let's see how to select these configuration items . This is the first option screen , Let's start with a simple configuration ：
(1) The first interface
Platform choice (Freescale iMX reference boards) --->
Just keep the default , Save directly and exit .
(2) Second interface
Selection (imx6q) --->
take Selection Choose as imx6q, Then save and exit .
(3) The third interface
board (mx6q_sabresd) --->
take board Choose as mx6q_sabresd, Then save and exit .
And then I saw LTIB Start exporting automatically, start compiling code . Now the compiler is what we need u-boot, kernel Wait for the project , These are all freescale Our engineers maintain , So it's not going to go wrong , I didn't run into any errors in compiling .
thus , It's done. LTIB Construction of environment , In the next article, we'll start transplanting u-boot. If you have any questions, please leave a message to discuss .
After compiling, the LTIB Under the installation path of , Generate rootfs, And in rootfs/boot/ There are compiler generated uboot and kernel Mirror image , and rootfs The generation of the through layer jffs2 File system mirroring .
The key paths ：
/home/girlkoo/Projects/L3.0.35_4.1.0： ltib The installation directory , Pay attention to the distinction between source directory and source directory
/opt/freescale/pkgs/: Catalog of toolchain
install LTIB Several understandings of ：
1. Follow the above method , Ready to transplant uboot, But in board/freescale There's nothing down there imx6 On board information about , What went wrong ？
- [Freescale]E9 Learning notes -LTIB summary
from :http://blog.csdn.net/wl_haanel/article/details/6231353 Write it at the front Symbol '##' The following statements are comments What to do ...
- Node.js Learning notes ( One ) Installation configuration
Node.js Installation configuration This installation tutorial is designed to Node.js v4.4.3 LTS( Long term support version ) Version as an example Window Installation on Node.js You can install it in two ways . 1.Windows Installation package (.m ...
- Hadoop Learning notes ： Installation configuration Hive
1. On the official website http://hive.apache.org/ Download the required version of Hive, Let's take hive 2.1.0 Version as an example . 2. Put the downloaded compressed package into the specified folder and unzip it ,tar -zxvf apache ...
- Hadoop Learning notes ： Installation configuration Hadoop
Some environment configuration before installation : 1. Add... To the user sudo jurisdiction , Input su - Get into root account number , Then input visudo, Enter edit mode , Find this line :"root ALL=(ALL) ALL" Hereunder ...
- blfs（systemd edition ） Learning notes - Compile installation configuration dhcpcd
My email address :email@example.com Welcome to exchange learning error correction ! dhcpcd Project address :http://www.linuxfromscratch.org/blfs/view/stable-syst ...
- blfs（systemv edition ） Learning notes - Compile installation configuration dhcpcd
My email address :firstname.lastname@example.org Welcome to exchange learning error correction ! dhcpcd Project address :http://www.linuxfromscratch.org/blfs/view/8.3/basicne ...
- MySQL Learning notes -MHA Installation configuration
One . Configure master-slave synchronization 1. In this case, master-slave ip And port Master:10.1.5.8:3306 Slave1:10.1.5.9:3306 ( The candidate master) Slave2:10.1.5.195:3306 ...
- CentOS Learning notes --Tomcat install
Tomcat install Usually we have to configure Tomcat It's a very easy thing , But if you want to build a multi-user multi service Java Virtual hosting is not so easy . One of the biggest problems is Tomcat Executive authority . It's configured in a normal way Tomca ...
- Learning notes _J2EE_SpringMVC_03_ Annotation configuration _@RequestMapping usage
@RequestMappingde Usage of Abstract : It mainly introduces notes @RequestMapping Usage of One .@RequestMapping brief introduction stay Spring MVC Use in @RequestMappi ...
- E3-1230 and E3-1230 V2 How wonderful is it ？
I've been chasing E3-1230, gun E3-1230 That's a lot of people , They've been hailed as gods , I'm right, too E3-1230 View of the . Installation plan of the same grade , I'm more inclined to i5 2320/2500K/3570K. The first Compare two first U It's about the specifications of .E ...
- JAVA Homework ： The graphical interface
Do it yourself a little JAVA Program : A student management system , It's frustrating , But that's what I learn JAVA The first step . To learn the 2 God JAVA No waste ! import java.awt.*; import java.awt.even ...
- OC Single case in
Concept The intention of the singleton pattern is that the object of a class is called the only instance in the system , Provide an access point , For customers to share resources When to use singletons ) A class can only have one instance , And it has to be accessed from a well-known access point , Like the factory approach ) The only example ...
- nagios And zabbix contrast
nagios And zabbix contrast web function : Nagios Simple and intuitive , Alarms and data are on the same page ,***. Red is the problem item .Nagios web Don't do any configuration on the client side . Zabbix Monitoring data and alarm are separated , Look at problems ...
- SDL Developing actual combat （ 7、 ... and ）： Use SDL Realization PCM player
Above , We did YUV player , So we get started SDL Play the video . Now let's make a PCM Play , That is to use SDL Play PCM data . Here's how to use SDL Play PCM The basic flow of audio , Mainly divided into two parts : initialization SDL. ...
- asp.net Subapplication / Virtual directory session share
I have a problem recently , I did it asp.net mvc The application should be deployed to several sites as a sub application , You need to get the site's session value . Already in use session state server, And set up ...
- Give Way win7 Become wireless routing （ It needs to be opened with administrator permission ） Finally, perfect .rar
Give Way win7 Become wireless routing ( It needs to be opened with administrator permission ) Finally, perfect .bat @ECHO OFF CLS color 0a netsh wlan show drivers ECHO.**************** ...
- gensim Tools [ Learning notes ]
Platform information :PC:ubuntu18.04.i5.anaconda2.cuda9.0.cudnn7.0.5.tensorflow1.10.GTX1060 One . take copy_train.csv The content of the document is divided into two parts ...