I'm trying to build the TianoCore EDKII (SVN Revision 4792) on IBM's own Linux distribution, called OpenClient. The distribution sucks but it's the only kind of Linux we're allowed to use around here. It's based on Red Hat (I think), but it feels "different".
To bootstrap the TianoCore Build Environment, I sort of followed my FreeBSD and Fedora Core notes. Here's what I did:
- Installed Java JDK 6 Update 4 (JDK 1.6.0_04) for Linux through the self-extracting binary file (not the RPM) that Sun provides. I placed the JDK in /opt.
- Installed the binary distribution of Apache Ant 1.7.0, Saxon 8.1.1, XMLBeans 2.1.0 as well as ant-contrib 1.0b3 and placed all of them in /opt.
- Created the symlinks:
$ cd /opt/apache-ant-1.7.0/lib $ sudo ln -s /opt/ant-contrib/ant-contrib-1.0b3.jar ant-contrib.jar $ sudo ln -sf /opt/saxonb8.1.1/saxon8.jar /opt/xmlbeans-2.1.0/lib/saxon8.jar
export JAVA_HOME=/opt/jdk1.6.0_04 export XMLBEANS_HOME=/opt/xmlbeans-2.1.0 export ANT_HOME=/opt/apache-ant-1.7.0 export WORKSPACE=/home/phs/Sources/edk2 export PATH=$PATH:$XMLBEANS_HOME/bin:$ANT_HOME/bin . edksetup.sh ForceRebuildSourcing the script successfully builds the build tools. Then, in the file $WORKSPACE/Tools/Conf/target.txt, two settings need to be adjusted:
ACTIVE_PLATFORM=EdkUnixPkg/Unix.fpd TOOL_CHAIN_TAG=ELFGCCOf course, the previously mentioned patch needs to be applied. After that, the EDKII Unix Emulation Package can be built and run as described in the tutorial:
$ cd $WORKSPACE/ $ build $ cd Build/Unix $ . run.cmdI found that the IBM OpenClient distribution already includes the e2fsprogs-devel package as well as the relevant X11 development packages. Please also note that it is not neccessary to build an PE32+ cross compiler on Linux.