Qc amss build

Source: Internet
Author: User

There are two ways to compile the source of ARM9,
Compile in Linux. Because we do not have the licence of rvct2.2 in Linux, cygwin must be used for compiling in Linux. The following are
This article describes how to compile these two methods. In the Linux environment, the compilation is just a little bit, basically the same as in windows.
1) cmd.exe
1) Tools
Rvds (rvct) 2.2.1 bld593
GNU make
GNU awk 3.1.4 or later
Perl 5.8.5 or later
Python 2.4.3

Note: It must be python2.4.3.

Http://www.python.org/ftp/python/2.3.4/



After rvct is installed, the official patch 593 must be installed before normal compilation. After completing the patch, execute the following operations to use the patch ARMCC for compilation:
CD yourmenu/ARM/rvct/programs/2.2/593/win_32-pentium
CP ARMCC TCC
Cp armcc armcpp
CP ARMCC TCPP
Except Python
2.4.3 you must download and install the tool separately. Other tools can be downloaded through cygwin package. Cygwin's default Python version is 2.5, which must be 2.4.3
Replace it. By default, python will be installed in the user/local/bin directory of cygwin, back to python.exe under the/bindirectory, and
Change/local/bin/python2.4.exeto python.exe and add C:/cygwin/usr/local/bin to path.

2) Compile
 
1. First modify m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build
In/MS, change the environment variables to the correct values (rvct and cygwin installation Directories) and add the variable armtools =
Rvct221
2XX execute m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build/MS/rvct22.bat under cmd.exe
 
3. Modify m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build
/MS/tsncjnlym. cmd, remove the build_unix and use_build_nativelinux_modem compilation options
4、in cmd.exe enter m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build/MS, execute tsncjnlym. CMD to start compiling Source

3) Problem
Three problems are encountered during compilation. One is the cp936 error reported during Python parsing, and the other is the failure to find the C library caused by-MnO-cygwin, finally, YACC and flex provided by cygwin always exit with a fatal error during analysis.
1. Python

After downloading build_unix, qc uses propgen.exe to parse python, but this will cause the cp936 error because
To be unable to modify the configuration of this executable program, go directly to the m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products
In/76xx/Dal/dal.min, the pythontool is replaced with the python2.4.exe of cygwin.
2.-MnO-cygwin
 
In this example, the generated .exe does not need to rely on the third-party library cygwin1.dll. All the libraries use the libraries provided by the OS. Because GCC is used in
All executable programs compiled under cygwin depend on cygwin1.dll. To generate an application that does not depend on cygwin1.dll, you can specify this option during compilation.
. However, after this option is specified, cygwin no longer uses the standard library provided by it by default, but uses the standard library provided by mingw for compilation. If your cygwin does not correctly install mingw
The header file cannot be found. Detailed documentation can be referred here: http://www.delorie.com/howto/cygwin/mno-cygwin-howto.html

To solve this problem, either install the mingw standard library correctly or remove this compilation option. Here I removed this compilation option and added the path of cygwin1.dll to path.
3. YACC/flex

This problem was solved by Chen Qi by using the YACC/flex tool in the standard Linux machine. C and. h file, and then copy the corresponding file to the corresponding directory.
Then, modify products/76xx/secboot/pai_data/config_gen.mak to remove the use of flacc and flex, and
Delete the file generated in the clean rule.

Ii. cygwin
1) Same as tools
2) Compile
 
1. First modify m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build
In/MS, change the environment variables to the correct values (rvct and cygwin installation Directories) and add the variable armtools =
Rvct221
2XX execute m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build/MS/rvct22.bat under cmd.exe
3. Under cmd.exe enter m76xxtsncjnlym4725/HY11-VR356-8_4.7.25/AMSS/products/76xx/build/MS, execute Bash./tsncjnlym. CMD to start compiling Source
3) Problem
1. Because build_unix = Yes, makefile selects the CIFC and hostdl_gen executable programs in Linux, but the cgywin environment does not recognize
The executable program of linuxlinuxcan be used directly, and makefilewill automatically choose cifc.exeand hostdl_gen.exe.
2. Same as above 3)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.