You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

To get new bug fixes not yet in a production release, to try out a newer release, or simply because the newest OpenAFS has not yet been packaged for your version of Fedora/RHEL, you may with to build your own OpenAFS RPMs. This, of course, first requires a SRC rpm. SRC RPMs can be generated from the OpenAFS source.

Step-by-step guide

You will need devel libraries and tools installed on your system for OpenAFS to build successfully.

  1. Do a "git clone" of the OpenAFS source code repository:
    git clone git://git.openafs.org/openafs.git

  2. Check what branches are available. Generally, there will be a branch for the current "stable" and then branches for different releases of OpenAFS:

    $ git branch -r

      origin/HEAD -> origin/master

      origin/disconnected

      origin/instrumentation

      origin/master

     ...

      origin/openafs-stable-1_6_9-branch

      origin/openafs-stable-1_6_x

     

     As of the time of this writing, you will generatlly want the "origin/openafs-stable-1_6_x" branch, since 1.6.x is the current stable version of OpenAFS.

     

  3. Checkout the branch you want:
    git checkout origin/openafs-stable-1_6_x

  4. You need to create a .version file at the top level of your git tree... this is used to indicate what "version" of OpenAFS you are installing. Even if it isn't a real version. For example, I wanted to call my version openafs-1.6.11pre1.1:

    ]$ cat .version

    openafs-devel-1_6_11pre1_1

    Note that the dots are replaced by underscores.

  5. Rename your "openafs" directory to correspond to the version. So, with the above version, my "openafs" directory is now named: openafs-1.6.11pre1.1

  6. Now, you will need to run the "regen.sh" script in the top level of your openafs directory:
    openafs-1.6.11pre1.1]$ ./regen.sh

  7. Once completed, cd up one directory and create two tar files, named with your openafs version, one containing the source and one containing the documentation:

    tar  cjvf openafs-1.6.11pre1.1-src.tar.bz2 openafs-1.6.11pre1.1/ --exclude=openafs-1.6.11pre1.1/doc --exclude=openafs-1.6.11pre1.1/.git

    tar cjvf openafs-1.6.11pre1.1-doc.tar.bz2 openafs-1.6.11pre1.1/doc

  8. Now, cd to the src/packaging/RedHat subfolder:

    pwd

    /home/user/Downloads/openafs/openafs-1.6.11pre1.1/src/packaging/RedHat

  9. And run the "makesrpm.pl" script to build your src rpm:
    perl ./makesrpm.pl ../../../../openafs-1.6.11pre1.1-src.tar.bz2 ../../../../openafs-1.6.11pre1.1-doc.tar.bz2
  10. Now, you have a .src.rpm you can rebuild to generate RPMs:
    rpmbuild --rebuild openafs-1.6.11-0.pre1.src.rpm
  11. The built RPMs should be placed in ~/rpmbuild/RPMS/

 

There is no content with the specified labels

  • No labels