目录
1 确认 VSCode 已安装以下扩展包
2 新建空文件夹、自动初始化 CMake 和 main.cpp
3 自动生成编译任务 Tasks.json
4 编译工程、生成静态或动态库
5 主程序调用库啦~~
演示视频: https://www.bilibili.com/video/av97690436
VSCode 打开一个空文件夹、点击 查看-命令工作面板、或直接输入 Shift+Commond+P、屏幕顶部会弹出命令面板。
选择 『CMake:快速入门』-『GCC 5.5.0』、输入项目名称后回车、选择『创建库』
注意:这里选择『创建可执行文件』、则会自动创建一个可执行文件
稍等10s 左右、在工程目录下会自动生成文件夹build 、文件 CMakeLists.txt、VSCodeDLL.cpp(这个文件也是自动生成的哦)
输入 Shift+Commond+P、选择『任务:配置任务』-『使用模板创建 tasks.json』
更改 tasks.json 中 label:tesk 中的 command 内容如下:
"command": "cd ${workspaceFolder}/build && rm -rf CMakeFiles && cmake . && make",
输入 Shift+Commond+P、选择『任务:运行任务』-『test』、在终端会自动显示编译过程及结果。
默认编译的是静态库。如果想编译动态库、可以在 CMakeLists.txt 中 add_library 增加一个 SHARED 关键字即可。
- 生成lib库
- 例子:add_library(ALib SHARE alib.cpp)
- 命令:add_library(libname [SHARED|STATIC|MODULE] [EXCLUDE_FROM_ALL] source1 source2 ... sourceN)
libname:生成的库文件的名字
[SHARED|STATIC|MODULE]:生成库文件的类型(动态库|静态库|模块)
[EXCLUDE_FROM_ALL]:有这个参数表示该库不会被默认构建
source2 ... sourceN:生成库依赖的源文件,如果源文件比较多,可以使用aux_sourcr_directory命令获取路径下所有源文件.
创建一个 VSCodeDLL.cpp 对应的头文件 VSCodeDLL.h 给主程序用、重新编译。
主程序的生成可参考上一篇文章:【VSCode教程】 C++ Hello World、快速自动生成、你值得拥有!!
在主程序添加库头文件、并调用库函数 say_hello()
在主程序的 CMakeLists.txt 中添加 target_link_libraries ,第二个参数是库的完整地址。
target_link_libraries(VSCodeExe
/Users/Leehom/Desktop/ProgramTests/VSCodeDLL/build/libVSCodeDLL.a
)
编译、运行、 say_hellow吖~~
⭕️完成、散花