vs2017下编译使用MIRACL大数库

Posted by PNIDEMOOO on 2019-06-29

下载MIRACL库

下载Github上的MIRACL源代码

配置cl编译器

  • 用户变量Path中添加 vs2017目录\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x86;
  • 系统变量添加INCLUDE变量:vs2017目录\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;
  • 系统变量添加LIB变量:vs2017目录\VC\Tools\MSVC\14.16.27023\lib;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;
  • 系统变量Path中添加 vs2017目录\SDK\ScopeCppSDK\SDK\include\ucrt;

编译MIRCAL库

  • 按照官方文档的要求,把解压后的MIRACL文件夹下的所有文件(注意是所有!!!)放到同一个文件夹【A】下,不要有层级。
  • 在vs2017文件夹\VC\Auxiliary\Build路径下找到并运行vcvars32.bat(vcvars64.bat/vcvarsall.bat)
  • 在文件夹A下找到并运行ms32doit.bat (留意有无报错)
  • 运行结束后会再文件夹A下生成一个miracl.lib库文件
  • 编译完毕

vs2017下引入MIRACL库

  • 项目->属性->VC++目录->包含目录 中添加文件夹A
  • 项目->属性->VC++目录->库目录 中添加文件夹A
  • 项目->属性->链接器->输入->附加依赖项 中添加miracl.lib;
  • 注意:C++项目引入MIRACL库的时候一定要extern “C”, 因为它是一个C库,不是C++库,不然会报错LNK2019无法解析的外部符号

    extern "C" {
        #include <miracl.h>
        #include <mirdef.h>
        #include <stdio.h>
    }