Tuesday 18 September 2012

Mock environment building

     
           Mock builds our source RPM package in a safe environment (chroot) to test our package functional  status, and the chroot simulates the real-world working platform for our testing purpose.

            First, I install the mock package by using command of "yum install mock", and then add myself to the group of mock by using command of " usermod -aG mock maximum".  Then, In the directory of ~/rpmbuild/SPRM/, I use command "mock -r fedor-17-x86_64 wget-1.13.4-2.fc17.src.rpm"to build the source rpm package in mock environment. The building process takes 5 minutes and 17 seconds. After finishing the building process, the result will save in the directory of /var/lib/mock/fedora-17-x86_64/result. In the result directory, it contains three log files normally, which are one binary rpm file, one source rpm file, and one debug rpm file. The build.log records the entire building process for the wget program, which simulates the building process in fedora-17-x86_64 working environment. The state.log file states the mock version number, and shows the building time phase. The root.log file shows the debug information and the running status.


Sunday 16 September 2012

Building and Compiling package from the source files

Object 1: build wget package
1)      Download wget tar.gz file from ftp://ftp.gnu.org/gnu/wget
2)      Using command “tar zxvf wget-1.9.tar.gz” to un-tar the tar.gz file to local directory
3)      Run ./configure to build for the fedora platform
a.       During the “./configure” process, checking status shows error message: “configure error: --with-ssl was given, but GNUTLS is not available” . Look like; it is the GNUTLS program is missing. Then, I should build the GNUTLS program from the beginning.
4)      Download the latest version of gnutls-3.1.1 tar.xz from ftp://ftp.gnu.org/gnu/gnutls/
5)      Running the command “tar xJf gnutls-3.1.1.tar.xz” to un-tar the gnutls program.
6)      Run “./configure” to build gnutls.
a.       Another error message appear “Libnettle 2.5 was not found. Note that you must compile nettle with gmp support”. Look like; Another dependence package nettle is missing. Then, I should build nettle package for the GNUTLS program.
7)      In the file of gnutls-3.0.19/README, it shows “the library depends on libnettle and p11-kit”. 
8)      Download nettle-2.5.tar.gz from ftp://ftp.lysator.liu.se/pub/security/lsh
9)      Using command “tar zxvf nettle-2.5.tar.gz” to un-tar the nettle tar.gz file to local directory
10)  Run ./configure to build nettle for the fedora platform
a.       This process looks normal, and nothing weird thing happens.
b.      Run “make” command to build nettle. The “make” runs successfully.
11)  Download the program gmp-5.0.5 and p11-kit-0.14 from the website, and perform the process of “./configure, make, and make install”.
12)  Rebuilding gnutls program in its directory uses the command “./configure”, make, and then make. The error is gone.
13)  Get back to wget directory, and re-run the commands of “./configure”, “make”, and “make install”. The wget installs successful.

Object 2:  build gimp program
1)      Download gimp program from ftp://ftp.gimp.org/pub/gimp/v2.8/
2)      Un-tar the file of gimp-2.8.2.tar.bz2 in directory using command of “ tar xvjf gimp-2.8.2.tar.bz2”
3)      Run command “./configure” to the program for fedora
a.       Error happens during the configuring process, found out that the dependence package of “babl” and “gegl” are missing
b.      Install the babl, gegl, and atk packages by using the command “yum install babl babl-devel gegl gegl-devel atk atk-devel”, and install gtk+, gtk+-devel, gtk+extra, gtk+extra-devel libtiff libtiff-devel libtiff-static pygtk2-devel pygtk2-codegen tools in Apper
4)      After the library and dependency packages finish installation, then run make and make install command to finish the compiling process.  

Friday 7 September 2012

Hi, everyone


   This is Max. I am working in IFS program in fifth semester, and currently involves the course of open source software build and release system. My nick name in Freenode is Maximum. My learn ID is zcou. The  Raspberry Pi is an exciting piece of product because it does not only provide personal computer like functionality, but also gives users lots of freedom to transform this pieces of hardware to become other types of brand new devices; for example, GPS tracking device, baby monitor, proxy server, and car dash camera server etc. More importantly,  Raspberry Pi remains the affordable price for their customers, and only costing $35, the user can obtain this powerful and portable PC like equipment. Therefore, Raspberry Pi project is getting so popular in nowadays.

This is my IRC chat, and the fedora-unregistered issue is already fixed by typing this command in IRC conversion bar "/msg NickServ REGISTER password youremail@example.com", and then follows the email instruction to complete the registration. Then, the unregistered issue will be gone.