.. _spkg_eclib:

eclib: Enumerating and computing with elliptic curves defined over the rational numbers
=======================================================================================

Description
-----------

John Cremona's programs for enumerating and computing with elliptic curves
defined over the rational numbers.

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 in
the eclib package, which may be distributed under the GNU General Public
License, version 2, or any later version.

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.

License
-------

eclib is licensed GPL v2+.


Upstream Contact
----------------

-  Author: John Cremona
-  Email: john.cremona@gmail.com
-  Website:
   http://homepages.warwick.ac.uk/staff/J.E.Cremona/mwrank/index.html
-  Repository: https://github.com/JohnCremona/eclib

Type
----

standard


Dependencies
------------

- :ref:`spkg_pari`
- :ref:`spkg_ntl`
- :ref:`spkg_flint`

Version Information
-------------------

package-version.txt::

    20220621


Equivalent System Packages
--------------------------

arch:

.. CODE-BLOCK:: bash

    $ sudo pacman -S  eclib


conda:

.. CODE-BLOCK:: bash

    $ conda install  eclib


Debian/Ubuntu:

.. CODE-BLOCK:: bash

    $ sudo apt-get install  libec-dev eclib-tools


Fedora/Redhat/CentOS:

.. CODE-BLOCK:: bash

    $ sudo yum install  eclib eclib-devel


freebsd:

.. CODE-BLOCK:: bash

    $ sudo pkg install math/eclib


gentoo:

.. CODE-BLOCK:: bash

    $ sudo emerge sci-mathematics/eclib[flint]


nix:

.. CODE-BLOCK:: bash

    $ nix-env --install eclib


void:

.. CODE-BLOCK:: bash

    $ sudo xbps-install  eclib-devel


See https://repology.org/project/eclib/versions


If the system package is installed, ./configure will check whether it can be used.

