Coder Social home page Coder Social logo

sagsalim99 / libtommath Goto Github PK

View Code? Open in Web Editor NEW

This project forked from libtom/libtommath

0.0 0.0 0.0 21 MB

LibTomMath is a free open source portable number theoretic multiple-precision integer library written entirely in C.

Home Page: https://www.libtom.net

License: Other

C 87.38% Perl 3.37% Makefile 2.78% Assembly 0.10% Shell 3.32% HTML 0.16% Roff 0.06% Swift 0.30% CMake 2.53%

libtommath's Introduction

libtommath

This is the git repository for LibTomMath, a free open source portable number theoretic multiple-precision integer (MPI) library written entirely in C.

Build Status

Travis CI

master: Build Status

develop: Build Status

AppVeyor

master: Build status

develop: Build status

ABI Laboratory

API/ABI changes: check here

Summary

The develop branch contains the in-development version. Stable releases are tagged.

Documentation is built from the LaTeX file bn.tex. There is also limited documentation in tommath.h. There is also a document, tommath.pdf, which describes the goals of the project and many of the algorithms used.

The project can be build by using make. Along with the usual make, make clean and make install, there are several other build targets, see the makefile for details. There are also makefiles for certain specific platforms.

Testing

Tests are located in demo/ and can be built in two flavors.

  • make test creates a stand-alone test binary that executes several test routines.
  • make mtest_opponent creates a test binary that is intended to be run against mtest. mtest can be built with make mtest and test execution is done like ./mtest/mtest | ./mtest_opponent. mtest is creating test vectors using an alternative MPI library and test is consuming these vectors to verify correct behavior of ltm

Building and Installing

Building is straightforward for GNU Linux only, the section "Building LibTomMath" in the documentation in doc/bn.pdf has the details.

CMake support

The project provides support for the CMake build system.

git clone https://github.com/libtom/libtommath.git
mkdir -p libtommath/build
cd libtommath/build
cmake ..
make -j$(nproc)

A shared library build can be done by setting -DBUILD_SHARED_LIBS=On when invoking the cmake command.

libtommath's People

Contributors

sjaeckel avatar minad avatar fperrad avatar czurnieden avatar nijtmans avatar karel-m avatar mrpelotazo avatar vonbrand avatar cntrump avatar magicaltux avatar tomstdenis avatar moritz avatar mkj avatar dmitry-lipetsk avatar dfateyev avatar abokth avatar kennykb avatar dbussink avatar masterduke17 avatar madebr avatar ramkumarkoppu avatar lomereiter avatar arnout avatar timgates42 avatar prince213 avatar samcv avatar mikhailnov avatar serval2412 avatar nomeata avatar j08ny avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.