扩展知识:vscode配置easyx
扩展知识:vscode配置easyx
前言
因为个人用习惯了vscode,对于visual studio的操作只能说相当程度上很不适应,因此,我打算经历一番配置,让vscode可以配置上easyx。
尽管参考了不少博客,但是不是在被踢来踢去的就是搞得特别复杂。不行,只能自己尝试了。
笔者环境:
MinGW-w64(因为我根据这个配置的我的vscode环境:Get Started with C++ and MinGW-w64 in Visual Studio Code)
- 当初没学markdown的时候我自己写了这么一篇粗糙的博客,近期稍微做了一下修改,感兴趣可以看看(疯狂暗示)如何配置Visual Studio Code C/C++环境
vscode(这不废话吗)
vscode配置easyx
寻找easyx
关键在于,首先,我们需要easyx的头文件,以及easyx头文件所对应的函数实现。让我们找到它。我的visual studio是2022版。
lib(静态链接库):
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\lib\x86-
EasyXa.lib -
EasyXw.lib
-
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\lib\x64-
EasyXa.lib -
EasyXw.lib
-
h(头文件) :
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include-
easyx.h -
graphics.h
-
找到它们后,先把它们放到一个文件夹里面备用。
让easyx到我们最需要的地方去
现在的情况是找不到这个头文件,那我们就放到对应目录去,怎么放呢?iostream能找到,那我们看看iostream在哪里,按下ctrl,然后鼠标左键单击即可。
根据路径:C:\msys64\mingw64\include\c++我们果不其然,找到了iostream。
接下来,我们就把easyx的头文件丢进去。于是,就有了相关函数的·声明和定义了。
那么函数的实现呢?我们还要把对应的lib(静态链接库) 丢到合适的地方。
在网上查了很久,都不是我想要的效果,好吧,完蛋,我又得自己动手了。
让我们看看报错信息。
可以断定,就是缺少了定义,而我们相应的定义放在了lib当中。事情陷入了瓶颈......
easyx配置到vscode的方法
去easyx官方看看吧,在 CLion、Dev-C++ 或 Code::Blocks 下面配置 EasyX(2023-7-23 更新) - CodeBus
配置说明
基本上,任何开发环境配置 easyx for mingw 都只需两步:
1. 安装库文件
下载的压缩包先解压缩,然后将 include 下的头文件和 lib32/lib64 下的库文件,分别拷贝到 MinGW 的头文件和库文件中。如果不确定具体的库文件路径,参考本文末尾的 QA 部分。
2. 增加编译时的链接选项
链接选项增加:-leasyx,这样可以在编译的时候链接 libeasyx.a 库文件。每个项目都要这样设置一次,然后编译即可。
很好,这样一来问题就好办了(真的,真的,真的对不给参考链接,参考资料的很多博客表示头疼。这不是让我无头苍蝇乱窜吗?)
让我们一步一步搞定它。
关于什么是.a文件:以.a(a为后缀)的文件类型是啥鸭?_.a文件-CSDN博客
放入lib64的
.a文件->../mingw64/lib-
-
放入lib32的
.a文件->../mingw32/lib-
-
放入include的
.h文件->../mingw64/include-
-
-
然后,就要修改我们的task配置了,这就涉及到对gcc编译命令的使用了,参考如下:
仅仅需要指定一下我们的库文件搜索路径目录,然后添加编译选项leasyx即可(对不起,我真的不想用什么cl,也不想用什么shell诸如此类的东西,能简简单单搞定的事情就不要搞太复杂QWQ)
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "C:\\msys64\\mingw64\\bin\\g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-L", // 在库文件的搜索路径列表中添加dir目录,
"C:\\msys64\\mingw64\\lib",
"-leasyx"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
结语
不想被踢皮球,就多找原始出处,多自己动手实现。虽然过程艰辛,但是收获也不少。
参考资料
easyx:
gcc:
- gcc的常用选项与编译_gcc编译时,添加选项 -wl,-rpath,动态库的路径-CSDN博客
- GCC -l 选项添加链接库_ggc 链接库】-CSDN博客
- 以.a(a为后缀)的文件类型是啥鸭?_.a文件-CSDN博客
扩展知识:vscode配置easyx的更多相关文章
- VSCode配置MSVC+VSCode使用easyx库,2021.5.13日配置
VSCode配置MSVC+VSCode使用easyx库,2021.5.13日配置~~ 想必很多人和我一样,想用vscode编程c++,easyx库不支持MinGW,一般人都是直接使用vs2019安装e ...
- iOS 数据持久化(扩展知识:模糊背景效果和密码保护功能)
本篇随笔除了介绍 iOS 数据持久化知识之外,还贯穿了以下内容: (1)自定义 TableView,结合 block 从 ViewController 中分离出 View,轻 ViewControll ...
- 二、vue之 使用vscode配置
vue之 使用vscode配置 visual studio code 简称vscode,下图为图标 ... 开启vscode ... 1.导入文件夹,选择菜单栏 文件-打开文件夹->选择相应已 ...
- VSCode配置简单的vue项目
VSCode配置简单的vue项目 https://www.cnblogs.com/wnxyz8023/p/9989447.html 由于最近要使用的项目框架为前后端分离的,采用的是vue.js+web ...
- VSCode配置JAVA开发环境
VSCode配置JAVA开发环境 1:给机器安装JDK.MAVEN 下载JDK 下载路径:https://www.oracle.com/technetwork/java/javase/download ...
- # VsCode 配置C++调试运行
VsCode 配置C++调试运行 打开命令面板快捷键为F1,软件上写的Ctrl+Shift+P似乎没用 先安装插件使得可以运行 先自行在vsc扩展中搜索C++安装C/C++插件 再参考知乎专栏中安装c ...
- VScode 配置为 LaTeX 编辑器(IDE)
VScode 配置为 LaTeX IDE 在Windows中,配置VScode作为LaTeX的编辑器(IDE),并使用SumatraPDF预览PDF文件.主要是LaTeX Workshop扩展的设置, ...
- Mac上利用VScode配置c/c++开发环境
Mac上利用VScode配置c/c++开发环境 哭辽,Typora里面最好不要插入表情,不然保存会闪退 首先你要有一个vscode 在扩展里面下载c/c++ 第一步 ⬆+com+p 打开命令模式:选择 ...
- 如何快速在vscode配置C/C++环境
目录 1.卸载重装vscode 2.下载vscode 3.下载MinGW 4.配置环境变量 5.配置c/c++环境 6.超完整的配置文件 7.常用扩展推荐 8.注意 9.后记 相信许多刚开始使用vsc ...
- vscode 配置 Pug Compile Hero Pro 插件步骤
这个随笔主要介绍 vscode 配置 Pug Compile Hero Pro 插件的步骤,实现快速使用less 以及 scss 等的编程语言 第一步 当然是安装我们的插件啦! 在插件商店里 搜 Sa ...
随机推荐
- Qt采集本地摄像头推流成rtsp/rtmp(可网页播放/支持嵌入式linux)
一.功能特点 支持各种本地视频文件和网络视频文件. 支持各种网络视频流,网络摄像头,协议包括rtsp.rtmp.http. 支持将本地摄像头设备推流,可指定分辨率和帧率等. 支持将本地桌面推流,可指定 ...
- Qt音视频开发47-文字和图片水印(可存储到MP4中)
一.前言 近期花了两周时间闭门啃硬骨头,主要就解决三个问题(音视频同步存储和推流.图片水印并将水印信息存储到文件或者推流.rtsp推流),这三个问题困扰了很多年,以至于找遍了网络和翻遍ffplay代码 ...
- Qt音视频开发01-共享解码线程(耗时一年/性能凶残/至臻完美)
一.前言 大概在8年前就开始用ffmpeg做视频解码的显示,第一个版本就100行代码左右,功能极其简单,就是开个线程解码视频流转成图片发给主界面绘制.时间过得真快,从当初的一胎到现在二胎都上学了三胎计 ...
- 墨卡托及Web墨卡托投影解析
Google Maps.Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator(Web墨卡托投影)或Spherical Mercator(球面墨卡托投影),它与常规墨卡 ...
- spark (二) spark wordCount示例
目录 实现思路 实现1: scala 基本集合操作方式获取结果 实现2: scala map reduce方式获取结果 实现3: spark 提供的map reduce方式获取结果 FAQ: 实现思路 ...
- 浅说c/c++ coroutine
浅说c/c++ coroutine 从上面我们可以得到关于协程的几个关键信息, 1.打破传统(regular)函数调用的限制. 2.stackful协程实现方式,基于独立栈,上下文切换. 3.stac ...
- Springboot 整合 xxl-job
前言 很久很久以前写过好几篇关于定时任务的使用系列的文章: 这一篇是最简单的,就是单纯跑跑定时任务,那你看这篇就行,没必要用xxljob(因为xxljob要跑服务端,然后自己服务作为客户端接入): 文 ...
- 工作流程调度器-DolphinScheduler
1.DolphinScheduler简介 Apache DolphinScheduler](https://dolphinscheduler.apache.org/)(目前处在孵化阶段)是一个分布式. ...
- 揭秘10种主流PLC在ModbusTCP通信中的速度表现!
大家好!我是付工. 通透!终于把ModbusRTU弄明白了 这样看来,ModbusTCP协议太简单了 太简单了!C#轻松实现Modbus通信 前面给大家介绍了一系列关于Modbus和ModbusTCP ...
- RockyLinux9编译安装MySQL5.7
Linux版本: Rocky Linux release 9.5 (Blue Onyx) 1.下载 打开MySQL-Community-Server官方下载页面:https://downloads.m ...