在Windows环境,VSCode调用C的第三方库函数

学习记录

目标

在Windows环境,VSCode调用C的第三方库函数
VSCode官方配置教程
MSYS2官方下载与安装教程链接


MSYS2

一 、MSYS2官方下载与安装教程链接

注意
1、MSYS2可以安装或提取到计算机的任何位置,但您必须使用仅包含ascii字符且不包含空格的文件夹名称(由于path路径的MAX为260,所以将其放置在使用少量字符的路径中很有意义;C:\msys32或C:\msys64是理想的)。
2、在**$ pacman -Syu**之前,更换包管理器的软件源。默认包管理器的软件源是在国外的(有梯子另说),换国内的速度会比较快: (对源文件进行备份是个好习惯)

编辑 /etc/pacman.d/mirrorlist.mingw32 ,在文件开头添加:
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686
编辑 /etc/pacman.d/mirrorlist.mingw64 ,在文件开头添加:
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64
编辑 /etc/pacman.d/mirrorlist.ucrt64 ,在文件开头添加:
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/ucrt64
编辑 /etc/pacman.d/mirrorlist.clang64 ,在文件开头添加:
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/clang64
编辑 /etc/pacman.d/mirrorlist.msys ,在文件开头添加:
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch


原文链接:https://blog.csdn.net/qq_17728627/article/details/124207407
中国科学技术大学 Linux 用户协会

刷新包管理器pacman -Sy,然后按照教程继续。

如果要安装mingw && gcc

  1. 运行“MSYS2 MSYS64”
  2. 使用以下命令更新其余基本软件包:pacman -Su
  3. 安装一些工具和 mingw-w64 GCC:pacman -S --needed base-devel mingw-w64-x86_64-toolchain
  4. 验证安装结果:gcc --version
$ pacman -S --needed base-devel mingw-w64-x86_64-toolchain
warning: file-5.39-2 is up to date -- skipping
[... more warnings ...]
:: There are 48 members in group base-devel:
:: Repository msys
   1) asciidoc  2) autoconf  3) autoconf2.13  4) autogen
   [... more packages listed ...]

Enter a selection (default=all):
:: There are 19 members in group mingw-w64-x86_64-toolchain:
:: Repository mingw64
   1) mingw-w64-x86_64-binutils  2) mingw-w64-x86_64-crt-git
   [... more packages listed ...]

Enter a selection (default=all):
resolving dependencies...
looking for conflicting packages...

Packages (123) docbook-xml-4.5-2  docbook-xsl-1.79.2-1
               [... more packages listed ...]
               m4-1.4.18-2  make-4.3-1  man-db-2.9.3-1
               mingw-w64-x86_64-binutils-2.35.1-3
               mingw-w64-x86_64-crt-git-9.0.0.6090.ad98746a-1
               mingw-w64-x86_64-gcc-10.2.0-6
               mingw-w64-x86_64-gcc-ada-10.2.0-6
               mingw-w64-x86_64-gcc-fortran-10.2.0-6
               mingw-w64-x86_64-gcc-libgfortran-10.2.0-6
               mingw-w64-x86_64-gcc-libs-10.2.0-6
               mingw-w64-x86_64-gcc-objc-10.2.0-6
               mingw-w64-x86_64-gdb-10.1-2
               mingw-w64-x86_64-gdb-multiarch-10.1-2
              [... more packages listed ...]

Total Download Size:    196.15 MiB
Total Installed Size:  1254.96 MiB

:: Proceed with installation? [Y/n]
[... downloading and installation continues ...]

$ gcc --version
gcc.exe (Rev1, Built by MSYS2 project) 12.2.0
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

二、pacman包管理

常用命令
安装新包:pacman -S <Package names | Package groups>
删除包:pacman -R <package names | package groups>
搜索包:pacman -Ss <name pattern> && pacman -Sl|grep package-name
更新本地软件包数据库:pacman -S --refresh  &&  pacman -Sy
升级软件包:pacman -S --refresh --sysupgrade  &&  pacman -Syu
列出所有安装软件:pacman -Q --explicit  &&  pacman -Q -e

pacman包管理命令大全


添加环境变量

将msys安装目录下的\mingw64\bin和\usr\bin添加到windows的系统环境变量中
添加环境变量


VSCode配置

在这里插入图片描述

1、VSCode安装拓展C/C++ Extension Pack。同时将settings.json中的配置恢复默认状态,(清空settings.json即可),届时settings.json会自动配置好的在这里插入图片描述

配置好的settings.json

2、修改c_cpp_properties.json c_cpp_properties.json文件设置方案

Crtl+Shift+P找到Edit Configurations。在包含路径中添加 msys安装路径\mingw64\include/。添加后的c_cpp_properties.json应发生变化,includePath中会自动新增"C:\msys64\mingw64\include/"
在这里插入图片描述
在这里插入图片描述
添加后的c_cpp_properties.json
编译器路径:扩展使用包含路径设置来设置C++标准库头文件的路径。当扩展知道在哪里可以找到这些文件时,它可以提供智能完成和转到定义导航等功能。
C/C++扩展会尝试根据它在系统上找到的内容填充默认编译器位置。该扩展在几个常见的编译器位置中查找。编译器的搜索路径:
首先检查 Microsoft Visual C++ 编译器
然后在 Windows Subsystem for Linux (WSL)上查找 g++
再然后是 g++ for Mingw-w64。
如果安装了 Visual Studio 或 WSL,则可能需要进行更改以匹配项目的首选编译器。

3、修改tasks.json

修改.vscode下的tasks.json,以下图为例:
在这里插入图片描述
我需要调用gmp、openssl/bn的库函数。因此添加
gmp: “-l”, “gmp”,
openssl: “-l”, “ssl”, “-l”, “crypto”
在这里插入图片描述

"-I",
"C:\\gmp", //改成你的gmp.h所在文件夹的路径(一般是在gmp文件夹里)
"-L",
"C:\\gmp\\.libs",//改成你的libgmp.a静态库所在文件夹的路径(一般在gmp的.libs里)
"-l",
"gmp"//表示libgmp.a(gmp静态库)
原文链接:https://blog.csdn.net/qq_43094622/article/details/105733133

4、运行成功运行成功

参考链接

https://blog.csdn.net/qq_17728627/article/details/124207407

猜你喜欢

转载自blog.csdn.net/m0_51429482/article/details/125191731
今日推荐