[Wien] Gentoo install
Michael Ryan Hansen
mrh at chem.au.dk
Tue Jun 14 13:34:08 CEST 2005
On (14/06/05 12:01), Michael Gurnett wrote:
> I'm trying to set up gentoo on the cluster, due to some problems
> that eem to be occuring with Lineox 4. However, I cannot seem to
> install the intel compiler (7, 8 or 9). I saw that some people on
> the list were using Gentoo. Does anyone know how to get ifort and
> mkl working under Gentoo. Any help would be really appreciated.
I am running WIEN2k_05 on a computer with Gentoo installed. The
compiler I use is ifc 7.1 and the math libs are mkl 7.2. I have
customized two ebuilds that works for me (attached). These should be
installed in a local portage (eg. /usr/local/portage/, see below) and
your make.conf file should include a line like
PORTDIR_OVERLAY=/usr/local/portage
In PORTAGE_OVERLAY create the dirs:
dev-lang/ifc and sci-libs/mkl
and put the ebuilds here. The mkl ebuild must be be edited so it
contains the version of mkl you want to use
(RPMFILE=you-version.rpm). Make a digest in each of the above
mentioned dirs
ebuild name.ebuild digest
Put your license files in /opt/intel/licenses/. For the mkl libs you
must download the file yourself from Intel - extract the rpm file and
put it in /usr/portage/distfiles/. The installation of ifc is simply
installed the normal Gentoo way (eg. emerge ifc -va, notice that there
should appear and overlay dir below). Add the following lines (if they
don't already exist) to /etc/profile
export INTEL_LICENSE_FILE=/opt/intel/licenses
export LD_LIBRARY_PATH=/opt/intel/mklXXX/lib/32:$LD_LIBRARY_PATH
My OPTIONS file for WIEN2k_05 looks like this
current:FOPT:-FR -mp -w
current:FPOPT:-FR -mp -w
current:LDFLAGS:-L/opt/intel/mklXXX/lib/32 -Vaxlib -i_dynamic
current:DPARALLEL:'-DParallel'
current:R_LIBS:-lmkl_lapack -lmkl_p4 -lguide -lpthread
current:RP_LIBS:-L /usr/local/SCALAPACK -L /usr/local/BLACS/LIB -lpblas -lredist -ltools -lscalapack -lfblacs -lblacs -lmpi
Hope this helps. I look forward to hear whether or not this works on a
cluster of computers.
Michael
--
Michael Ryan Hansen
MSc, PhD stud.
Department of Chemistry
University of Aarhus
Langelandsgade 140
8000 Aarhus C, Denmark
Office: +045 89 42 38 71
Home: +045 28 78 56 54
email: mrh at chem.au.dk
-------------- next part --------------
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sci-libs/mkl/mkl-5.2.ebuild,v 1.1 2004/12/28 21:45:07 ribosome Exp $
inherit rpm multilib
S=${WORKDIR}
DESCRIPTION="Intel(R) Math Kernel Library"
HOMEPAGE="http://developer.intel.com/software/products/mkl/"
# EDIT THIS LINE TO THE RIGHT rpm
RPMFILE="intel-mkl-7.2p-8.i386.rpm"
SRC_URI="${RPM}"
IUSE=""
# No need to, there aren't any executables and it takes a long time.
RESTRICT="nostrip fetch"
SLOT="7.2"
LICENSE="imkl-7.2"
KEYWORDS="-* amd64 ia64 x86"
DEPEND="app-arch/cpio
app-arch/rpm"
RDEPEND=">=sys-kernel/linux-headers-2.4
>=sys-libs/glibc-2.2.2"
src_unpack() {
cd ${S}
rpm2cpio ${DISTDIR}/${RPMFILE} | cpio -i --make-directories
}
src_install () {
cp -a ${S}/opt ${D}/
case ${ARCH} in
amd64)
LIBDIR=em64t DELETE="32 64";;
ia64)
LIBDIR=64 DELETE="32 em64t";;
x86)
LIBDIR=32 DELETE="64 em64t";;
*)
die "Unsupported architecture. Supported are amd64, ia64 and x86!";;
esac
for x in ${DELETE} ; do
echo "Deleting ${x}..."
rm -Rf ${D}/opt/intel/mkl72/lib/${x}
done
dodir /usr/$(get_libdir)
ln -sf ${D}/opt/intel/mkl72/${LIBDIR} ${D}/usr/$(get_libdir)/mkl72
cd ${D}/opt/intel/mkl72/doc/
dodoc license.txt
dohtml -r mklnotes.htm mkllic.htm doc/*
rm -rf license.txt *.htm uninstall doc/
# Prepare the environment
dodir /etc/env.d
echo "LDPATH=/usr/$(get_libdir)/mkl72" > ${D}/etc/env.d/35mkl
echo "MKL_ROOT=/opt/intel/mkl72" >> ${D}/etc/env.d/35mkl
}
-------------- next part --------------
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /home/cvsroot/gentoo-x86/dev-lang/ifc/ifc-7.0.064-r1.ebuild,v 1.5 2003/09/24 15:11:58 avenj Exp $
inherit rpm
S=${WORKDIR}
A="l_fc_p_7.1.008.tar"
DESCRIPTION="Intel Fortran Compiler - The Pentium optimized compiler for Linux"
SRC_URI1="ftp://download.intel.com/software/products/compilers/downloads/l_fc_p_7.1.008.tar"
SRC_URI2="http://www.intel.com/software/products/compilers/downloads/l_fc_p_7.1.008.tar"
SRC_URI="${SRC_URI1} ${SRC_URI2}"
HOMEPAGE="http://developer.intel.com/software/products/compilers/flin/"
# Effectively the same license as icc
LICENSE="icc-7.1"
SLOT="0"
KEYWORDS="-* x86"
DEPEND=">=virtual/linux-sources-2.4
>=sys-libs/glibc-2.2.4"
RDEPEND=">=virtual/linux-sources-2.4
>=sys-libs/glibc-2.2.4"
src_unpack() {
unpack ${A}
cd "${S}"
# Keep disk space to a minimum
rm -f intel-*.ia64.rpm
for x in intel-*.i386.rpm
do
rpm_unpack $x
done
}
src_compile() {
# From UNTAG_CFG_FILES in 'install'
SD=${S}/opt/intel # Build DESTINATION
RD=/opt/intel # Real DESTINATION
for FILE in $(find $SD/compiler70/ia??/bin/ -regex '.*[ei][cf]p?c$\|.*cfg$\|.*pcl$\|.*vars[^/]*.c?sh$' 2>/dev/null)
do
sed s@\<INSTALLDIR\>@$RD at g ${FILE} > ${FILE}.abs
mv -f ${FILE}.abs ${FILE}
chmod 755 ${FILE}
done
# From UNTAG_SUPPORT in 'install'
eval `grep "^[ ]*COMBOPACKAGEID=" install`
SUPPORTFILE=${SD}/compiler70/docs/fsupport
sed s@\<INSTALLTIMECOMBOPACKAGEID\>@$COMBOPACKAGEID at g $SUPPORTFILE > $SUPPORTFILE.abs
mv $SUPPORTFILE.abs $SUPPORTFILE
chmod 644 $SUPPORTFILE
SUPPORTFILE=${SD}/compiler70/docs/idbsupport
sed s@\<INSTALLTIMECOMBOPACKAGEID\>@$COMBOPACKAGEID at g $SUPPORTFILE > $SUPPORTFILE.abs
mv $SUPPORTFILE.abs $SUPPORTFILE
chmod 644 $SUPPORTFILE
# these should not be executable
find "${SD}/compiler70/"{docs,man,training,ia32/include} -type f -exec chmod -x "{}" ";"
find "${SD}/compiler70/ia32/lib" -name \*.a -exec chmod -x "{}" ";"
}
src_install () {
dodoc flicense
cp -a opt ${D}
# ifc enviroment
insinto /etc/env.d
doins ${FILESDIR}/${PVR}/05icc-ifc
# fix the issue with the primary ifc executable
exeinto /opt/intel/compiler70/ia32/bin
doexe ${FILESDIR}/${PVR}/ifc
}
pkg_postinst () {
einfo
einfo "http://www.intel.com/software/products/compilers/flin/noncom.htm"
einfo "From the above url you can get a free, non-time limited, non-commercial"
einfo "personal use license key that comes with no support. You will need to read"
einfo "and agree to the license and then fill in your info to have one emailed to"
einfo "you. Read the website for the details."
einfo
einfo "Documentation can be found in /opt/intel/compiler70/docs/"
einfo
einfo "You will need to place your license in /opt/intel/licenses/"
einfo
ewarn
ewarn "Packages compiled with older versions of icc will need"
ewarn "to be recompiled. Until you do that, old packages will"
ewarn "work if you edit /etc/ld.so.conf and change 'compiler70'"
ewarn "to 'compiler60' and run 'ldconfig.' Note that this edit"
ewarn "won't persist and will require you to re-edit after each"
ewarn "package you re-install."
ewarn "Due to a bug in ifc 7.0, the primary executable (ifc) may not work."
ewarn "Instead of invoking the compiler as ifc, use ifcbin."
}
More information about the Wien
mailing list