首页 / 资讯中心 / 文章详情

2024年Dev-C++安装配置全攻略:从下载到C++17设置与报错排查

2024年Dev-C++安装配置全攻略:从下载到C++17设置与报错排查 ★ FEATURED ARTICLE
1. 为什么 2024 年了还要聊 Dev-C先把结论摆在前面如果你是一个刚接触 C/C 的新手或者你需要在 Windows 上快速搭一个轻量级的编译环境Embarcadero Dev-C 依然是目前最省心的选择之一。它免费、开源、安装包不到 50MB装完就能写代码、按 F11 直接编译运行不需要你折腾编译器路径、不需要手动配置 JSON 文件、更不需要理解什么叫“任务提供程序”。我知道很多人会说现在都用 VS Code 了谁还用 Dev-C。这话对也不对。VS Code 确实强大但它的强大建立在“你得先会配”这个前提上。我见过太多新手装完 VS Code写了个hello.cpp然后卡在“找不到 gcc”这个报错上一卡就是一下午。Dev-C 解决的就是这个问题——它把编辑器和 MinGW 编译器打包在一起装完即用零配置起步。这篇文章面向三类人第一类是完全零基础、刚学 C 语言的大学生第二类是需要一个轻量 IDE 来快速验证代码片段的开发者第三类是被各种“安装配置教程”坑过、想找一个真正能跑通的完整方案的人。我会从下载、安装、配置、常见报错排查四个维度把整个流程拆开讲透包括那些官方文档不会告诉你的坑。注意Embarcadero Dev-C 和早期 Bloodshed Dev-C 是两个不同的维护线。Bloodshed 版本早在 2005 年就停止更新了网上很多老教程还在教那个版本装完会有各种兼容性问题。认准 Embarcadero 维护的版本GitHub 上直接搜 embarcadero/dev-cpp 就能找到。2. 下载渠道与版本选择别从乱七八糟的下载站拿安装包2.1 官方发布渠道与版本号解读Embarcadero Dev-C 的官方发布渠道是 GitHub Releases 页面。你直接在浏览器地址栏输入github.com/embarcadero/dev-cpp/releases就能看到所有历史版本。截至我写这篇文章的时候最新稳定版是 6.3 版本更新日期在 2023 年底。版本号怎么读以Dev-Cpp 6.3 TDM-GCC 9.2.0 Setup.exe为例拆开看三部分6.3是 Dev-C 自身的版本号TDM-GCC 9.2.0是内置编译器的版本Setup表示这是安装版。还有一个变体是Portable版本表示免安装的便携版解压就能用适合放在 U 盘里随身带。选哪个如果你是在自己电脑上长期用选 Setup 安装版它会自动关联.c和.cpp文件双击源码就能打开。如果你是在机房、公司电脑或者临时环境用选 Portable 版不写注册表用完删掉就行。提示GitHub 的下载速度在国内可能不太稳定。如果下载到一半断了可以试试用迅雷或者 IDM 这类下载工具来接管下载链接。另外不要从任何第三方“软件下载站”获取安装包那些站点的安装包经常被捆绑广告插件甚至可能被替换成带后门的版本。2.2 安装包类型对比与选择建议安装包类型文件名特征适用场景是否需要管理员权限Setup 安装版含 Setup.exe个人电脑长期使用是Portable 便携版含 Portable.7z临时环境、U盘携带否源码包含 Source.zip想自己编译 IDE 的进阶用户否我个人的建议很直接新手无脑选 Setup 版。Portable 版虽然灵活但第一次用的时候需要手动设置编译器路径反而多了一步。Setup 版装完就自动配好了省事。还有一个细节值得注意安装包分 32 位和 64 位两个版本。怎么看自己电脑是哪个Win10/Win11 用户打开“设置 → 系统 → 关于”看“系统类型”那一栏。如果是“64 位操作系统”就下 64 位版本。虽然 32 位版本在 64 位系统上也能跑但编译出来的程序性能会打折扣而且大项目编译时容易内存不足。2.3 下载时的常见坑与规避方法第一个坑文件名混淆。GitHub Releases 页面上有很多文件除了安装包还有源码包、调试符号包等。认准文件名里带Setup.exe的那个大小在 45-50MB 左右。如果只有几 MB那肯定是源码包不是安装程序。第二个坑杀毒软件误报。Dev-C 内置的 MinGW 编译器里有个gcc.exe某些杀毒软件会把它误判为风险程序。下载完先别急着双击如果杀毒软件弹窗拦截选择“信任”或“添加白名单”。我实测过Windows Defender 一般不报但某些国产杀毒软件会。第三个坑下载到旧版本。GitHub Releases 页面默认展示最新版但如果你从搜索引擎点进去可能会落到某个旧版本的页面。养成习惯进 Releases 页面后先看最上面那个版本那才是最新的。3. 安装过程逐步拆解每一步都在做什么3.1 安装向导的每个选项该怎么选双击安装包第一个界面是选择语言。这里有个小细节Embarcadero Dev-C 的安装程序支持多语言但简体中文的翻译质量一般有些术语翻得不太准确。我的建议是选 English装完之后在 IDE 里面再设成中文界面这样安装过程中不会因为翻译问题选错选项。点 OK 之后进入许可协议页面勾选“I accept the agreement”下一步。然后是选择安装位置。默认路径是C:\Program Files (x86)\Dev-Cpp我建议改成C:\Dev-Cpp。为什么两个原因第一路径里没有空格和括号某些老旧的构建脚本对空格路径支持不好第二路径短以后在命令行里敲路径的时候省事。接下来是选择组件。这里有几个勾选项需要留意TDM-GCC 9.2.0 64-bit Compiler必选这是核心编译器。Dev-C IDE必选主程序。Associate C/C files with Dev-C建议勾选这样双击.c或.cpp文件会自动用 Dev-C 打开。Create a desktop shortcut看个人习惯我一般不勾桌面保持干净。选完之后点 Install等进度条走完。安装过程大概需要 30 秒到 1 分钟取决于硬盘速度。3.2 首次启动的初始化设置装完第一次启动Dev-C 会弹出一个“首次配置”向导。这里有几个关键选择第一个是“选择你的语言”下拉框里选“简体中文/Chinese”。注意这个设置只影响 IDE 的菜单语言不影响编译器行为。第二个是“选择你的主题”有 Classic、Modern 等选项。这个纯粹是外观选哪个都行。我一般选 Classic因为字体渲染更清晰长时间看代码不累。第三个是“选择你的字体和颜色”默认的 Consolas 字体就很好字号建议设成 12 或 14。如果你用的是高分辨率屏幕字号要相应调大不然代码看起来会很小。配置向导走完之后你会看到 Dev-C 的主界面。中间是代码编辑区上方是菜单栏和工具栏下方是编译输出窗口。整个布局很传统没有 VS Code 那种花哨的侧边栏和插件面板但该有的功能都有。3.3 验证安装是否成功的三个测试装完别急着写代码先做三个验证测试确认环境没问题。测试一编译器版本检查。点菜单栏“工具 → 编译选项”在弹出的窗口里看“编译器”标签页。如果“编译器”下拉框里显示的是TDM-GCC 9.2.0 64-bit Release说明编译器已经正确识别。如果下拉框是空的或者显示“没有找到编译器”那说明安装过程中编译器组件没装上需要重新安装。测试二编译一个最小程序。新建一个源文件输入以下代码#include stdio.h int main() { printf(Dev-C 环境测试通过\n); return 0; }按 F11编译并运行如果弹出一个黑色控制台窗口显示“Dev-C 环境测试通过”说明编译器和运行环境都正常。测试三检查 C 标准支持。新建一个.cpp文件输入#include iostream int main() { auto x 42; std::cout C 标准测试: x std::endl; return 0; }按 F11 运行。如果输出“C 标准测试: 42”说明 C 编译器也正常工作。auto关键字是 C11 引入的能编译通过说明至少支持 C11 标准。注意如果你在测试二或测试三中遇到source file not compiled这个报错别慌这是 Dev-C 新手最常见的问题。原因和解决方法我在第 5 章会详细讲。4. 编译器配置与 C 标准设置让 Dev-C 支持现代 C4.1 编译器路径与构建配置详解Dev-C 默认使用 TDM-GCC 作为编译器。TDM-GCC 是 MinGW-w64 的一个分支专门为 Windows 平台优化过稳定性和兼容性都不错。编译器的主程序在安装目录下的MinGW64\bin文件夹里核心文件是gcc.exeC 编译器和g.exeC 编译器。怎么确认编译器路径配对了点“工具 → 编译选项 → 目录 → 编译器”这里应该有一条路径指向C:\Dev-Cpp\MinGW64\bin如果你按我建议的路径安装的话。如果这里为空点右边的文件夹图标手动添加。构建配置方面Dev-C 默认有两个配置Debug 和 Release。Debug 配置带调试符号编译出来的程序体积大、运行慢但可以用 GDB 调试。Release 配置做了优化程序体积小、运行快适合最终发布。日常写代码用 Debug 配置就行方便调试。4.2 开启 C11/14/17 标准的正确姿势这是 Dev-C 最容易被吐槽的地方默认情况下它用的是 C98 标准。这意味着你写auto、nullptr、范围 for 循环这些现代 C 特性编译器会报错。很多人以为 Dev-C 不支持现代 C其实只是没开对选项。开启方法点“工具 → 编译选项 → 编译器”在“编译时加入以下命令”的输入框里填-stdc17如果你需要 C20 的特性可以改成-stdc20。但要注意TDM-GCC 9.2.0 对 C20 的支持不完整部分特性可能编译不过。C17 是目前最稳妥的选择绝大多数现代 C 特性都支持。填完之后点确定然后重新编译你的程序。这时候auto、nullptr、结构化绑定这些特性就能正常用了。提示如果你只想对当前项目开启 C17而不是全局设置可以在“项目 → 项目属性 → 文件/目录”里单独配置。但全局设置更省事我一般直接全局开。4.3 优化选项与调试信息的取舍编译选项里还有两个参数值得关注-O2和-g。-O2是优化级别告诉编译器对代码进行二级优化生成的程序运行更快。但优化之后调试时变量的值可能和源码对不上因为编译器会重排指令。所以 Debug 配置下不要开-O2Release 配置下再开。-g是生成调试信息GDB 调试器需要这个信息才能把机器码映射回源码。Debug 配置下必须开Release 配置下可以关掉减小程序体积。Dev-C 的 Debug 和 Release 配置已经帮你预设好了这些参数一般不需要手动改。但如果你发现调试时变量值显示不对检查一下是不是不小心在 Debug 配置里开了优化。4.4 多编译器共存时的切换方法有时候你可能需要同时用多个编译器版本比如一个项目用 GCC 9.2另一个用 GCC 13。Dev-C 支持配置多个编译器在“工具 → 编译选项 → 编译器”里可以添加新的编译器配置。具体操作点“编译器”下拉框旁边的“”按钮输入新编译器的名称然后指定编译器路径。切换的时候在同一个下拉框里选对应的配置就行。不过说实话Dev-C 的多编译器管理做得比较简陋不如 VS Code 的c_cpp_properties.json灵活。如果你真的需要频繁切换编译器版本建议还是用 VS Code 或者 CLion。Dev-C 的定位就是轻量、简单别指望它做太重的事。5. 高频报错排查实录从 source file not compiled 到中文乱码5.1 source file not compiled 的三种成因与修复这个报错排第一因为几乎每个 Dev-C 新手都会遇到。报错信息是source file not compiled意思是“源文件没有被编译”。但奇怪的是你明明按了编译键为什么说没编译原因一源文件没有保存。Dev-C 编译的是磁盘上的文件不是编辑器里的内容。如果你新建了一个文件写了代码直接按 F11Dev-C 会先弹窗让你保存。如果你点了取消它就不会编译然后报这个错。解决方法很简单先按 CtrlS 保存文件再按 F11。原因二编译配置选错了。Dev-C 的工具栏上有个下拉框用来选择编译配置。如果选的是“Debug”但编译器路径没配好或者选了一个不存在的配置就会报这个错。检查方法看工具栏上的配置下拉框确保选的是TDM-GCC 9.2.0 64-bit Debug或Release。原因三杀毒软件拦截了编译过程。某些杀毒软件会监控gcc.exe的调用如果它认为编译行为可疑会静默拦截导致编译没有真正执行。解决方法把 Dev-C 的安装目录加入杀毒软件白名单。注意如果以上三种方法都试了还是报错试试“工具 → 编译选项 → 设置 → 清除”按钮清空所有临时文件然后重新编译。有时候是临时文件损坏导致的。5.2 中文乱码与控制台编码问题Dev-C 默认使用 GBK 编码保存源文件但 Windows 控制台默认也是 GBK所以理论上不会乱码。但如果你从网上复制了一段 UTF-8 编码的代码或者你的源文件是 VS Code 创建的 UTF-8 文件用 Dev-C 打开就会乱码。解决方法有两个方向。第一个方向统一用 GBK。在 Dev-C 里新建文件时默认就是 GBK 编码只要你不从外部复制 UTF-8 内容就不会乱码。第二个方向统一用 UTF-8。点“工具 → 编辑器选项 → 显示”把“默认编码”改成 UTF-8然后在编译选项里加-fexec-charsetGBK让编译器把 UTF-8 源码转成 GBK 输出到控制台。我个人的习惯是统一用 UTF-8因为现在大多数工具链都默认 UTF-8跨平台协作时不容易出问题。但如果你只在 Windows 上用 Dev-C用 GBK 更省事。5.3 链接错误与未定义引用的排查思路链接错误比编译错误更难排查因为报错信息往往很模糊。常见的链接错误有undefined reference to xxx和multiple definition of xxx。undefined reference的意思是“引用了某个函数或变量但链接器找不到它的定义”。常见原因函数声明了但没实现或者实现所在的源文件没有加入项目。解决方法检查函数是否真的实现了以及实现文件是否在项目里。multiple definition的意思是“同一个符号被定义了多次”。常见原因在头文件里定义了全局变量然后多个源文件都包含了这个头文件。解决方法在头文件里用extern声明变量在某个源文件里定义。Dev-C 的项目管理比较弱如果你把多个.c或.cpp文件放在同一个文件夹里但没有加入项目Dev-C 不会自动编译它们。你需要手动“项目 → 添加到项目”把相关文件加进去。5.4 常见报错速查表报错信息可能原因解决方法source file not compiled文件未保存、配置错误、杀毒拦截先保存再编译检查配置加白名单undefined reference to函数未实现、文件未加入项目检查实现添加文件到项目multiple definition of头文件中定义变量改用 extern 声明auto not declared未开启 C11编译选项加 -stdc17permission denied程序正在运行、文件只读关闭运行中的程序检查文件属性cannot open output file输出目录不存在、权限不足检查输出路径以管理员运行6. 从 Dev-C 到现代开发环境的平滑过渡6.1 什么时候该换 VS Code 或 CLionDev-C 适合入门但当你开始做稍大一点的项目时它的局限性就暴露了没有代码补全、没有重构功能、没有 Git 集成、项目管理弱。这时候就该考虑换工具了。什么时候换我的判断标准是当你开始觉得“这个功能怎么没有”的时候就是换的时候了。具体来说如果你需要以下任何一项就该换 VS Code 或 CLion智能代码补全、函数跳转、Git 版本控制、CMake 构建、多文件项目管理。VS Code 的配置比 Dev-C 复杂但网上教程很多。核心就是装C/C扩展和Code Runner扩展然后配tasks.json和launch.json。CLion 是 JetBrains 出的功能最全但收费学生可以申请免费授权。6.2 把 Dev-C 项目迁移到 VS Code 的实操步骤迁移其实很简单因为 Dev-C 的项目结构很扁平就是一堆.c或.cpp文件加一个.dev项目文件。VS Code 不需要.dev文件它直接编译文件夹里的所有源文件。具体步骤第一步用 VS Code 打开 Dev-C 项目所在的文件夹。第二步安装C/C扩展。第三步按 CtrlShiftP输入C/C: Edit Configurations (UI)在“编译器路径”里选C:\Dev-Cpp\MinGW64\bin\g.exe。第四步在.vscode文件夹里创建tasks.json配置编译任务。{ version: 2.0.0, tasks: [ { label: build, type: shell, command: C:\\Dev-Cpp\\MinGW64\\bin\\g.exe, args: [ -stdc17, -g, ${file}, -o, ${fileDirname}\\${fileBasenameNoExtension}.exe ], group: { kind: build, isDefault: true } } ] }配好之后按 CtrlShiftB 就能编译和 Dev-C 的 F11 效果一样。6.3 保留 Dev-C 作为快速验证工具的场景虽然我推荐换 VS Code但 Dev-C 也不是完全没用了。我自己的习惯是VS Code 用来写正式项目Dev-C 用来快速验证代码片段。比如我在看一篇算法文章想验证一下里面的代码能不能跑直接打开 Dev-C粘贴代码F11三秒钟出结果。VS Code 虽然也能做但启动慢、配置多不如 Dev-C 干脆。另外如果你在教别人学 C 语言Dev-C 依然是最好的教学工具。它的界面简单没有那么多干扰学生能专注于代码本身。VS Code 的侧边栏、插件面板、终端窗口对新手来说反而是负担。提示Dev-C 和 VS Code 可以共存它们用的是同一个 MinGW 编译器不会冲突。你可以两个都装按场景选用。7. 一些没人告诉你但很实用的配置技巧7.1 代码模板与快捷键自定义Dev-C 支持代码模板可以把你常用的代码片段存成模板新建文件时直接插入。设置方法点“工具 → 编辑器选项 → 代码模板”在“模板”标签页里添加。比如我加了一个main模板内容是#include stdio.h int main() { return 0; }新建文件后按 CtrlJ 就能插入这个模板省得每次手敲。快捷键也可以自定义。点“工具 → 编辑器选项 → 快捷键”找到你想改的命令点“修改”按钮按下新的快捷键组合。我一般把“编译运行”改成 F5因为 F11 离手指太远F5 更顺手。7.2 调试器的基本用法与断点技巧Dev-C 内置了 GDB 调试器虽然界面简陋但基本功能都有。设置断点在代码行号左边点一下会出现一个红色圆点。按 F5 启动调试程序会在断点处暂停。调试时常用的快捷键F7 单步进入进入函数内部F8 单步跳过不进入函数F9 运行到下一个断点。在下方窗口可以查看变量的值也可以手动添加监视表达式。一个实用技巧如果你只想看某个变量的值不用加断点直接把鼠标悬停在变量上Dev-C 会显示它的当前值。但这个功能只在调试模式下有效正常编辑时看不到。7.3 项目文件组织与多文件编译Dev-C 的项目文件是.dev格式本质上是一个 XML 文件记录了项目包含哪些源文件、编译配置是什么。新建项目点“文件 → 新建 → 项目”选“Console Application”然后选 C 或 C。多文件编译时把所有.c或.cpp文件放在同一个文件夹里然后“项目 → 添加到项目”逐个加进去。头文件不用加编译器会自动找。但头文件所在的目录要加到“包含目录”里否则会报No such file or directory。项目文件建议用相对路径不要用绝对路径。这样你把项目文件夹拷到别的电脑上也能正常编译。Dev-C 默认用相对路径但如果你手动添加文件时选了绝对路径就会出问题。7.4 备份与迁移配置的注意事项Dev-C 的配置存在两个地方一个是安装目录下的config文件夹另一个是用户目录下的%APPDATA%\Dev-Cpp文件夹。重装系统前把这两个文件夹备份一下重装后覆盖回去所有配置就都回来了。迁移到新电脑时除了配置文件还要注意编译器路径。如果你在新电脑上装到了不同的路径需要重新设置编译器路径。另外如果你自定义了代码模板和快捷键这些也在配置文件里一起备份就行。注意Dev-C 的配置文件是二进制格式不能直接用文本编辑器改。如果你想批量修改配置建议在 IDE 里改或者用 Portable 版本它的配置是明文 INI 文件改起来方便。8. 我个人在实际操作中的体会写了这么多最后分享几点我自己的真实感受。Dev-C 这个工具优点和缺点都很明显。优点是轻量、免费、开箱即用缺点是功能少、更新慢、界面老旧。但话说回来对于一个刚学 C 语言的人来说这些缺点其实都不重要。重要的是你能不能快速写出第一个程序能不能看到“Hello World”在屏幕上打印出来。Dev-C 能帮你做到这一点而且做得很好。我见过太多新手在配置环境上花了三天时间最后还没写出第一行代码热情就被消磨光了。Dev-C 的价值就在于它把环境配置这件事压缩到了五分钟以内。你先用 Dev-C 入门等真正喜欢上编程了再去折腾 VS Code 和 CMake那时候你已经有足够的动力去克服配置的困难了。还有一个细节Dev-C 的编译速度其实比 VS Code 快。因为 VS Code 每次编译都要启动终端、加载扩展、解析配置而 Dev-C 直接调用 gcc没有中间环节。对于小项目来说这个速度差异很明显。所以即使我现在主要用 VS CodeDev-C 依然留在电脑里作为快速验证的工具。最后再分享一个小技巧如果你在 Dev-C 里写代码时发现代码补全不工作检查一下“工具 → 编辑器选项 → 代码补全”里的设置。确保“允许代码补全”被勾选并且“延迟”设成了 0 或一个较小的值。另外代码补全只对已经保存的文件有效新建未保存的文件不会触发补全。这个坑我踩过当时以为 Dev-C 没有代码补全功能后来才发现是文件没保存。
阅读完成 · 觉得有帮助?
咨询建站