📄 node44.htm
字号:
<HTML>
<HEAD>
<!-- This file was generated by tohtml from mpichntman.tex -->
<!-- with the command
tohtml -default -dosnl -gaudy -basedef mpiman.def mpichntman.tex
-->
<TITLE>Rebuilding the <TT>mpich</TT> dlls from the source distribution</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<HR><H2><A NAME="Node44">Rebuilding the mpich dlls from the source distribution</a></H2>
<A HREF="node43.htm#Node43"><IMG WIDTH=16 HEIGHT=16 SRC="previous.xbm"></A><A HREF="node23.htm#Node23"><IMG WIDTH=16 HEIGHT=16 SRC="up.xbm"></A><A HREF="node44.htm#Node45"><IMG WIDTH=16 HEIGHT=16 SRC="next.xbm"></A><BR>
<b>Up: </b><A HREF="node23.htm#Node23"> Tools</a>
<b>Next: </b><A HREF="node44.htm#Node45"> Download the source distribution</a>
<b>Previous: </b><A HREF="node43.htm#Node43"> <TT>mpich</TT> and threads</a>
<P>
This section describes how to download and build the mpich dlls and tools from the
source distribution.
<P>
<menu>
</menu>
<P>
<HR>
<A HREF="node43.htm#Node43"><IMG WIDTH=16 HEIGHT=16 SRC="previous.xbm"></A><A HREF="node23.htm#Node23"><IMG WIDTH=16 HEIGHT=16 SRC="up.xbm"></A><A HREF="node44.htm#Node45"><IMG WIDTH=16 HEIGHT=16 SRC="next.xbm"></A><BR>
<b>Up: </b><A HREF="node23.htm#Node23"> Tools</a>
<b>Next: </b><A HREF="node44.htm#Node45"> Download the source distribution</a>
<b>Previous: </b><A HREF="node43.htm#Node43"> <TT>mpich</TT> and threads</a>
<P>
<HR><H3><A NAME="Node45">Download the source distribution</a></H3>
<A HREF="node44.htm#Node44"><IMG WIDTH=16 HEIGHT=16 SRC="previous.xbm"></A><A HREF="node44.htm#Node44"><IMG WIDTH=16 HEIGHT=16 SRC="up.xbm"></A><A HREF="node44.htm#Node46"><IMG WIDTH=16 HEIGHT=16 SRC="next.xbm"></A><BR>
<b>Up: </b><A HREF="node44.htm#Node44"> Rebuilding the <TT>mpich</TT> dlls from the source distribution</a>
<b>Next: </b><A HREF="node44.htm#Node46"> Build</a>
<b>Previous: </b><A HREF="node44.htm#Node44"> Rebuilding the <TT>mpich</TT> dlls from the source distribution</a>
<P>
The first step is to download the source distribution of <TT>mpich</TT> .
<P>
The easiest way to get <TT>mpich</TT> is to use the web
page <A HREF="www.mcs.anl.gov/mpi/mpich/download.html">www.mcs.anl.gov/mpi/mpich/download.html</A>; you can also use
anonymous ftp from <tt>ftp.mcs.anl.gov</tt> in directory
<em>pub/mpi/nt</em>. Get the file <em>mpich.nt.1.2.5.src.exe</em>.
<P>
Execute <em>mpich.nt.1.2.5.src.exe</em> and choose a directory to unzip the files into. An <TT>mpich</TT>
subdirectory will be created in the directory you choose. The default is
C:<IMG WIDTH=5 HEIGHT=11 SRC="img66.xbm">
Program Files<IMG WIDTH=5 HEIGHT=11 SRC="img67.xbm">
mpich<IMG WIDTH=5 HEIGHT=11 SRC="img68.xbm">
mpich. (The extra mpich
sub-directory is to prevent the source distribution from colliding with the
binary distribution.)
<P>
<P>
<HR>
<A HREF="node44.htm#Node44"><IMG WIDTH=16 HEIGHT=16 SRC="previous.xbm"></A><A HREF="node44.htm#Node44"><IMG WIDTH=16 HEIGHT=16 SRC="up.xbm"></A><A HREF="node44.htm#Node46"><IMG WIDTH=16 HEIGHT=16 SRC="next.xbm"></A><BR>
<b>Up: </b><A HREF="node44.htm#Node44"> Rebuilding the <TT>mpich</TT> dlls from the source distribution</a>
<b>Next: </b><A HREF="node44.htm#Node46"> Build</a>
<b>Previous: </b><A HREF="node44.htm#Node44"> Rebuilding the <TT>mpich</TT> dlls from the source distribution</a>
<P>
<HR><H3><A NAME="Node46">Build</a></H3>
<A HREF="node44.htm#Node45"><IMG WIDTH=16 HEIGHT=16 SRC="previous.xbm"></A><A HREF="node44.htm#Node44"><IMG WIDTH=16 HEIGHT=16 SRC="up.xbm"></A><A HREF="node47.htm#Node47"><IMG WIDTH=16 HEIGHT=16 SRC="next.xbm"></A><BR>
<b>Up: </b><A HREF="node44.htm#Node44"> Rebuilding the <TT>mpich</TT> dlls from the source distribution</a>
<b>Next: </b><A HREF="node47.htm#Node47"> Documentation</a>
<b>Previous: </b><A HREF="node44.htm#Node45"> Download the source distribution</a>
<P>
You must have MS Visual C++ 6 and Compaq(Digital) Visual Fortran 6 in order to build
without any modifications.
<P>
Load the workspace in Visual C++ IDE and select build=<I>></I>batch build=<I>></I>rebuild all.
<P>
There are several workspaces available:
<BLOCKQUOTE><DL>
<DT><IMG WIDTH=14 HEIGHT=14 SRC="purpleball.gif" ALT="*">
<b> mpich.dsw</b>
<P>
This project builds a shared memory/via/tcp device. It also contains the MPI-2 file
functions provided by Romio for the NTFS file system. There are three targets to the project:
<BLOCKQUOTE><DL>
<DT><IMG WIDTH=14 HEIGHT=14 SRC="redball.gif" ALT="*">
Debug/Release builds the C interface and three Fortran interfaces for g77, Visual
Fortran, and Intel. The Intel interface has MPI functions but not PMPI functions.
<DT><IMG WIDTH=14 HEIGHT=14 SRC="redball.gif" ALT="*">
Debug/ReleaseNoFortran excludes the Fortran files from the build in case you don't
have a Fortran compiler
<DT><IMG WIDTH=14 HEIGHT=14 SRC="redball.gif" ALT="*">
Debug/ReleaseCDECLStrLenEnd builds the C interface and one Fortran interface. Use
this project if you need to change the settings to match your Fortran compiler.
</DL></BLOCKQUOTE>
<BR>
If you have a FORTRAN compiler other than Digital Visual Fortran you will have to
make some code changes. You will have to change farg.f to use the corresponding
<tt>getarg</tt> and <tt>nargs</tt> calls provided by your compiler and set the USE lines to the
appropriate modules.
<P>
<DT><IMG WIDTH=14 HEIGHT=14 SRC="purpleball.gif" ALT="*">
mpe<IMG WIDTH=5 HEIGHT=11 SRC="img69.xbm">
<b> mpe.dsw</b>
<P>
The mpe workspace contains two projects used for logging mpich applications. The mpe library
is used to profile an application. If you link to <em>mpe.lib</em> before <em>mpich.lib</em>
your application will log all the MPI functions and output a clog file. <em>clog2slog.exe</em> is a tool
that converts the clog file to an slog file format that can be viewed with Jumpshot.
<P>
<DT><IMG WIDTH=14 HEIGHT=14 SRC="purpleball.gif" ALT="*">
mpid<IMG WIDTH=5 HEIGHT=11 SRC="img70.xbm">
nt_server<IMG WIDTH=5 HEIGHT=11 SRC="img71.xbm">
winmpd<IMG WIDTH=5 HEIGHT=11 SRC="img72.xbm">
<b> mpi2.dsw</b>
<P>
The mpi2 workspace contains the projects necessary to build the MPD launcher, the configuration
tool, the update tool, and other associated libraries.
<P>
mpid<IMG WIDTH=5 HEIGHT=11 SRC="img73.xbm">
nt_server<IMG WIDTH=5 HEIGHT=11 SRC="img74.xbm">
winmpd<IMG WIDTH=5 HEIGHT=11 SRC="img75.xbm">
mpich1<IMG WIDTH=5 HEIGHT=11 SRC="img76.xbm">
<b> mpich1.dsw</b>
<P>
The mpich1 workspace contains the projects necessary to build mpirun, mpiregister, and
guimpirun. These executables are specific to the mpd launcher.
<P>
<DT><IMG WIDTH=14 HEIGHT=14 SRC="purpleball.gif" ALT="*">
mpid<IMG WIDTH=5 HEIGHT=11 SRC="img77.xbm">
nt_server<IMG WIDTH=5 HEIGHT=11 SRC="img78.xbm">
remoteshell<IMG WIDTH=5 HEIGHT=11 SRC="img79.xbm">
<b> remoteshell.dsw</b>
<P>
The RemoteShell workspace contains projects necessary to build the DCOM launcher.
Only the Debug and ReleaseMinDependency versions have been tested. The UNICODE versions
may not work. The RemoteShellServer is the DCOM launcher. mpirun, mpiconfig and
mpiregister are tools that work with the DCOM launcher.
<P>
</DL></BLOCKQUOTE>
<BR>
Note:
<P>
You must compile the projects in the mpi2 workspace before compiling the mpich
workspace because the mpich dlls depend on the mpd libraries.
<P>
Note:
<P>
In order to compile cleanly you need to use the header files and libraries from the
Platform SDK instead of the VC++ distribution. The files that come with VC6 are
very old. The platform sdk has the most recent header files. If you do not want
to use the platform sdk files, you will have to do the following to get the projects
to compile:
<ol>
1. Adjust the mpich project
<P>
In the mpich project add the following definintion for all configurations: <BR>
USE_VC6_HEADERS
<BR>
2. Adjust the mpirun project
<P>
In the mpirun project of the mpich1 workspace remove the definition: <BR>
WSOCK2_BEFORE_WINDOWS.
</ol>
You can change these definitions from the project settings dialog:
Bring up the project settings (Alt F7). Go to C/C++, Category:[Preprocessor].
<P>
With these changes you can compile all the workspaces using the default libraries
and header files provided with MSDEV Visual C++ 6.x.
<P>
<P>
<HR>
<A HREF="node44.htm#Node45"><IMG WIDTH=16 HEIGHT=16 SRC="previous.xbm"></A><A HREF="node44.htm#Node44"><IMG WIDTH=16 HEIGHT=16 SRC="up.xbm"></A><A HREF="node47.htm#Node47"><IMG WIDTH=16 HEIGHT=16 SRC="next.xbm"></A><BR>
<b>Up: </b><A HREF="node44.htm#Node44"> Rebuilding the <TT>mpich</TT> dlls from the source distribution</a>
<b>Next: </b><A HREF="node47.htm#Node47"> Documentation</a>
<b>Previous: </b><A HREF="node44.htm#Node45"> Download the source distribution</a>
<P>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -