目录
1. 下载第三方库
下载什么的,就无需多言了。
完成后,一般都有这三个:
- h(头文件):暴露调用接口的声明
- lib(静态库):在链接阶段使用
- dll(动态链接库): 在运行exe文件时会进行加载,需要拷贝到项目目录下
PS: 小白指引——官网下载
链接,点击下载。安装路径最好不要有中文。
2. 配置Visual Studio
2.1 配置头文件地址
按照这个流程:项目
➡属性
➡C/C++
➡常规
➡附加包含目录
。
在附加包含目录
这一栏中,将你上面解压安装的第三方库中include
文件夹的路径复制或填写上去。
如图,我这里用的是libsndfile
,
2.2 配置库文件和地址
-
库文件地址填写流程:
项目
➡属性
➡链接器
➡常规
➡附加库目录
。
将你的库文件地址(就是包含了.lib文件的文件夹地址)填写到这一栏, -
实际.lib文件填写:
项目
➡属性
➡链接器
➡输入
➡附加依赖项
。
在上一步配置好后,在这一栏中将上一步地址中,你所需要的lib文件依赖项填写进去。这里写文件名即可。
2.3 动态链接库复制到项目文件夹下
这一步也不能缺少,要不然编译运行时会报出找不到***动态链接库
的错误。
我这里项目路径作为一个参考,将这个.dll文件和.cpp运行文件放在同一文件路径下。
3. 结果
成功编译运行。
如果没有做2.3的步骤,就会出现下面这个问题:
4. VSCode 配置
此处只是针对能够运行,Debug模式暂时我还没试过。。。
1. c_cpp_properties.json文件
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"W:/software/fftw/**",
"W:/software/boost_1_82_0/include/**",
"W:/software/libsndfile/include/**" // 头文件地址
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "c17",
"cppStandard": "gnu++14",
"intelliSenseMode": "gcc-x64",
"compilerPath": "W:/software/mingw64/bin/gcc.exe"
},
{
"name": "C++",
"includePath": [
"${workspaceFolder}/**",
"W:/software/fftw/**",
"W:/software/boost_1_82_0/include/**",
"W:/software/libsndfile/include/**" // 头文件地址
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "c17",
"cppStandard": "gnu++14",
"intelliSenseMode": "gcc-x64",
"compilerPath": "W:/software/mingw64/bin/g++.exe"
}
],
"version": 4
}
4.2. tasks.json 文件
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: gcc.exe 生成活动文件",
"command": "W:/software/mingw64/bin/gcc.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${workspaceFolder}\\*.c",
"-I","W:/software/fftw",
"-L","W:/software/fftw",
"-llibfftw3-3",
"-llibfftw3f-3",
"-llibfftw3l-3",
"-I","W:/software/libsndfile/lib",
"-L","W:/software/libsndfile/lib",
"-llibsndfile-1",
"-o",
"${workspaceFolder}\\myTest.exe"
],
"options": {
"cwd": "W:/software/mingw64/bin"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "编译器: W:/software/mingw64/bin/gcc.exe"
},
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "W:\\software\\mingw64\\bin\\g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${workspaceFolder}\\*.cpp",
"-I","W:/software/libsndfile/include", // -I 是对应头文件的位置
"-L","W:/software/libsndfile/lib", // -L 是对应库文件lib的位置
"-llibsndfile-1", // -l(小写L) 文件名
"-I","W:/software/fftw",
"-L","W:/software/fftw",
"-llibfftw3-3",
"-llibfftw3f-3",
"-llibfftw3l-3",
"-o",
"${workspaceFolder}\\myTest.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "编译器: W:\\software\\mingw64\\bin\\g++.exe"
}
]
}