| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| <meta http-equiv="X-UA-Compatible" content="IE=9"/> |
| <meta name="generator" content="Doxygen 1.8.13"/> |
| <meta name="viewport" content="width=device-width, initial-scale=1"/> |
| <title>AMCL: Windows</title> |
| <link href="tabs.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="jquery.js"></script> |
| <script type="text/javascript" src="dynsections.js"></script> |
| <link href="search/search.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="search/searchdata.js"></script> |
| <script type="text/javascript" src="search/search.js"></script> |
| <script type="text/x-mathjax-config"> |
| MathJax.Hub.Config({ |
| extensions: ["tex2jax.js"], |
| jax: ["input/TeX","output/HTML-CSS"], |
| }); |
| </script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script> |
| <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| </head> |
| <body> |
| <div id="top"><!-- do not remove this div, it is closed by doxygen! --> |
| <div id="titlearea"> |
| <table cellspacing="0" cellpadding="0"> |
| <tbody> |
| <tr style="height: 56px;"> |
| <td id="projectalign" style="padding-left: 0.5em;"> |
| <div id="projectname">AMCL |
| </div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <!-- end header part --> |
| <!-- Generated by Doxygen 1.8.13 --> |
| <script type="text/javascript"> |
| var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| </script> |
| <script type="text/javascript" src="menudata.js"></script> |
| <script type="text/javascript" src="menu.js"></script> |
| <script type="text/javascript"> |
| $(function() { |
| initMenu('',true,false,'search.php','Search'); |
| $(document).ready(function() { init_search(); }); |
| }); |
| </script> |
| <div id="main-nav"></div> |
| <!-- window showing the filter options --> |
| <div id="MSearchSelectWindow" |
| onmouseover="return searchBox.OnSearchSelectShow()" |
| onmouseout="return searchBox.OnSearchSelectHide()" |
| onkeydown="return searchBox.OnSearchSelectKey(event)"> |
| </div> |
| |
| <!-- iframe showing the search results (closed by default) --> |
| <div id="MSearchResultsWindow"> |
| <iframe src="javascript:void(0)" frameborder="0" |
| name="MSearchResults" id="MSearchResults"> |
| </iframe> |
| </div> |
| |
| </div><!-- top --> |
| <div class="header"> |
| <div class="headertitle"> |
| <div class="title">Windows </div> </div> |
| </div><!--header--> |
| <div class="contents"> |
| <div class="textblock"><h2>Software dependencies</h2> |
| <p>Minimalist GNU for Windows <a href="http://www.mingw.org/">MinGW</a> provides the tool set used to build the library and should be installed. When the MinGW installer starts select the mingw32-base and mingw32-gcc-g++ components. From the menu select "Installation" -> "Apply Changes", then click "Apply". Finally add C:\MinGW\bin to the PATH variable.</p> |
| <p>CMake is required to build the library and can be downloaded from www.cmake.org</p> |
| <p>In order to use the Python language wrapper install <a href="https://www.python.org">Python</a></p> |
| <p>The C Foreign Function Interface for Python <a href="https://cffi.readthedocs.org/en/latest/">CFFI</a> module is also required, if you wish to use the Python module.</p> |
| <ul type="disc"> |
| <li> |
| pip install cffi </li> |
| </ul> |
| <p>In order to build the documentation <a href="http://www.stack.nl/~dimitri/doxygen/">doxygen</a> is required.</p> |
| <h2>Build Instructions</h2> |
| <p>Start a command prompt as an administrator</p> |
| <p>The default build is for 64 bit machines, Elliptic curve BN254CX and curve type Weierstrass</p> |
| <ol type="disc"> |
| <li> |
| mkdir target\build </li> |
| <li> |
| cd target\build </li> |
| <li> |
| cmake -G "MinGW Makefiles" -D WORD_SIZE=64 ..\.. </li> |
| <li> |
| mingw32-make </li> |
| <li> |
| mingw32-make test </li> |
| <li> |
| mingw32-make doc </li> |
| <li> |
| mingw32-make install </li> |
| </ol> |
| <p>Post install append the PATH system variable to point to the install ./lib.</p> |
| <p>My Computer -> Properties -> Advanced > Environment Variables</p> |
| <p>The build can be configured using by setting flags on the command line i.e.</p> |
| <ol type="disc"> |
| <li> |
| cmake -G "MinGW Makefiles" -D WORD_SIZE=64 -D BUILD_PYTHON=on ..\.. </li> |
| </ol> |
| <h2>Uninstall software</h2> |
| <ul type="disc"> |
| <li> |
| mingw32-make uninstall </li> |
| </ul> |
| <h2>Building an installer</h2> |
| <p>After having built the libraries you can build a Windows installer using this command</p> |
| <ul type="disc"> |
| <li> |
| sudo mingw32-make package </li> |
| </ul> |
| <p>In order for this to work <a href="https://nsis.sourceforge.io">NSIS</a> has to have been installed</p> |
| </div></div><!-- contents --> |
| <!-- start footer part --> |
| <hr class="footer"/><address class="footer"><small> |
| Generated by  <a href="http://www.doxygen.org/index.html"> |
| <img class="footer" src="doxygen.png" alt="doxygen"/> |
| </a> 1.8.13 |
| </small></address> |
| </body> |
| </html> |