Updated 2012-05-17
mwrank is a program written in C++ for computing Mordell-Weil groups of elliptic curves over Q via 2-descent. It is available as source code (licensed under GPL) in the eclib package. mwrank is now only distributed as part of eclib. eclib is also included in Sage, and for most potential users the easiest way to run mwrank is to install Sage (which also of course gives you much much more). I no longer provide a source code distribution of mwrank by itself: use eclib instead. Full source code for eclib is available from google code.
To build eclib from the source code you must have Shoup's NTL library installed on your computer, and the PARI library, as well as gmp which each of these uses. The PARI library is only used for integer factorization. Since April 2012, eclib uses the GNU autotools build system which should allow it to be configured, built and installed on a wide variety of architectures (including all those on which Sage is supported).
eclib-2012-05-17.tar.gz:
source code (gzipped tar file, around 847k).
The source tarball has the format eclib-YYYY-MM-DD.tgz, tagged with the release
date of the distribution. Documentation for eclib,
including mwrank and modular symbol programs, is included in the
distribution.