前提准备:
msys:用于编译GMP库msys1.0.18 download | SourceForge.nethttps://sourceforge.net/projects/msys/
GMP库:下载tar.xz版本的GMP库
本文下载的是6.3.0版本,不保证后续的可用性msys1.0.18 download | SourceForge.nethttps://sourceforge.net/projects/msys/
编译GMP库
msys下载好后解压,将gmp-6.3.0.tar.xz放入D:\msys\home\Administrator文件夹下,注意这里面的Administrator是本人的用户名,具体到你自己会根据你电脑的用户名而改变。
然后打开msys.bat,在命令行中依次输入
tar -xvf gmp-6.3.0.tar.xz
cd ./gmp-6.3.0
./configure --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --disable-static --enable-shared --enable-cxx
make
make check
make install
整个过程大概在30~60分钟左右,请不要退出。
等到编译完成后,打开VScode进行配置
VScode配置
在你的项目文件夹中,打开c_cpp_properties.json和task.json这两个文件
c_cpp_properties.json配置
在includePath字段中,加入一行目录
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0"
这个路径是你刚才编译的gmp库所在的位置,具体位置是:(你msys保存的位置)/msys/home/(你的用户名)/gmp-6.3.0。
示例:
"includePath": [
"${workspaceFolder}/**",
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0"
],
注意:一定不要忘了在上一行的最后加一个逗号!
task.json配置
在args字段中,加入以下代码
"-I",
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0",
"-L",
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0\\.libs",
"-l",
"gmp",
其中,
-I后面的路径同c_cpp_properties.json中的一致,
-L后面的路径是前面那个文件夹里面的.lib文件夹,
-l后面是库的名称,即gmp。
示例:
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-I",
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0",
"-L",
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0\\.libs",
"-l",
"gmp",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
文件拷贝:
在你的.libs文件夹找到以下两个文件:
libgmp-10.dll
libgmpxx-4.dll
将这两个文件均复制粘贴到以下两个文件夹:
C:\Windows\System32
C:\Windows\SysWOW64
完成后即可在VScode中使用gmp/gmpxx库
两个路径的意义
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0",
这个路径里面有gmp.h和gmpxx.h的头文件。
"D:\\msys\\msys\\home\\Administrator\\gmp-6.3.0\\.libs",
这个路径里面有对应的gmp库所对应的libgmp.dll文件。