ReferencePlatforms/Linux: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Use GCC 4.1 from Fedora Core 6)
Line 65: Line 65:
  tar -xjf gcc-4_1-branch-117631.tar.bz2
  tar -xjf gcc-4_1-branch-117631.tar.bz2
  cd gcc-4_1-branch-117631
  cd gcc-4_1-branch-117631
  mkdir obj-release
  mkdir obj-release
  cd obj-release
  cd obj-release
  ../gcc/configure --prefix=/builds/gcc-4_1-branch-117631/installed-release --enable-__cxa_atexit --enable-languages=c,c++ --with-system-zlib
  ../gcc/configure --prefix=/builds/gcc-4_1-branch-117631/installed-release --enable-__cxa_atexit --enable-languages=c,c++ --with-system-zlib
  make
  make

Revision as of 15:17, 21 December 2006

This is a procedure I'm using to create a potential VM for producing Linux nightlies for Gecko 1.9.

Install CentOS4.3 from CDs

For the moment, I'm using "bsmedberg" as the regular user. If we are going to provide a public download of the VM, we probably shouldn't use the standard cltbld account/password. I'm not sure how that should work security-wise.

Choose the development workstation installation set.

Fix some permissions, create /builds directory

Save the following file as ~/.bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export CVS_RSH=ssh
export JAVA_HOME=/builds/jdk1.5.0_08

Fix some permissions, and create a /builds directory.

su -
chmod a+x /etc/bashrc
groupadd builders
usermod -a -G builders bsmedberg
mkdir /builds
chgrp builders /builds

Logout/login to pick up new group setting

Install Sun Java JDK

Note: we should archive this binary somewhere

cd /builds
./jdk-1_5_0_08-linux-i586.bin
# type 'yes' to accept the license

Make GCC 4.1 (redhat branch)

On a separate machine, use the following procedure to create a GCC 4.1.1 (RedHat branch) source tarball:

mkdir /builds/gcc-4_1-branch-117631
cd /builds/gcc-4_1-branch-117631
svn co -r117631 svn://gcc.gnu.org/svn/gcc/branches/gcc-4_1-branch gcc
# This is the source tarball used for Fedora Core 6
cd /builds
tar -cjf gcc-4_1-branch-117631.tar.bz2 gcc-4_1-branch-117631

Eventually this tarball should be committed to CVS.

On the build machine:

# Get the tarball from above and copy it to /builds (using SSH or curl or whatever)
tar -xjf gcc-4_1-branch-117631.tar.bz2
cd gcc-4_1-branch-117631

mkdir obj-release
cd obj-release
../gcc/configure --prefix=/builds/gcc-4_1-branch-117631/installed-release --enable-__cxa_atexit --enable-languages=c,c++ --with-system-zlib
make
make install

To build mozilla

The mozconfig for building mozilla should contain the following settings:

CC=/builds/gcc-trunk/installed-release/bin/gcc
CXX=/builds/gcc-trunk/installed-release/bin/g++