debian 11 c/c++ 开发环境

Debian 10.x amd64环境下配置VScode C/C++环境 Debian 10.x amd64环境下配置VScode C/C++环境 今天在Debian系统下安装配置了一套VScode C/C++的开发环境,稍微记录一下安装过程。 1. 搭建C++开发环境 打开终端,su获取管理员权限。最好先更新一下系统软件,再安装开发环境需要的包: sudo apt update sudo apt install build-essential gdb 其中build-essential是Debian提供的一整套C/C++编译环境所需的软件包,可以节省用户配置各个包的时间(其实 阅读详情

linux使用

在Ubuntu下搭建C/C++编程环境,综合起来说就是vim+gcc+gdb。其中vim用于文本编辑,gcc用于程序编译,gdb用于代码调试。

在Terminal中执行sudo apt-get install build-essential,即可安装必要的库函数。

 

文本编辑
Ubuntu自带的为vi编辑器,vim是vi的升级版,兼容vi。

1、安装
sudo apt-get install vim
2、常用指令
vim有三种模式
1.普通模式

当vim打开的时候就直接进入普通模式,在普通模式下可以执行删除、复制等指令

a , o ,i

 

2.插入模式 

插入模式可以编辑文本

Esc 键进入普通模式

3.命令模式

普通模式输入“:”(冒号)进入命令模式,此时在文本界面最下面一行可以输入相关命令,可以设置文本的保存退出方式等

普通模式常用下指令

i → Insert 模式,按 ESC 回到 Normal 模式.
x → 删当前光标所在的一个字符。
:wq → 存盘 + 退出 (:w 存盘, :q 退出)   (陈皓注::w 后可以跟文件名)
dd → 删除当前行,并把删除的行存到剪贴板里
p → 粘贴剪贴板
hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
:help <command> → 显示相关命令的帮助。你也可以就输入 :help 而不跟命令。(陈皓注:退出帮助需要输入:q)
 

有几张不同角度的cheat sheet,参考链接https://blog.csdn.net/weixin_35477207/article/details/78165411

 

 

 

vim学习连接:

https://vimjc.com/

https://coolshell.cn/articles/5426.html

https://vim-adventures.com/

https://blog.csdn.net/lsacaner/article/details/92800900

3.插件安装
对于Windows上做C++开发的用户来说,vs为他们做了大量的工作,语法高亮、自动缩进、智能提示等等,当你happy的使用vs时,请记住一点,这是一个收费软件,虽然在我大中华普遍都在使用微软的盗版软件,但作为程序员我们心里应该知道这是不对的行为,然后再去——等等,我们今天讨论的不是这个话题,我们要说的是Linux下的免费软件Vim!

我将本文需要安装的插件和配置文件都放在了github上,如果你不想大费周折的了解每个插件的安装方式,可以直接下载所有插件即可使用,项目地址https://github.com/handy1989/vim,可以按照如下命令备份并一次安装所有插件(注意,从git上下载的vim目录下都是隐藏文件,ls -a可以查看)

git clone https://github.com/handy1989/vim.git
mv vim/.vimrc ~/
mv vim/.vim ~/
sudo apt-get install ctags
原文链接:https://www.linuxidc.com/Linux/2016-06/132262.htm

代码编译
GCC(GNU Compiler Collection)是一组编译工具的总称,支持多平台、多语言源文件到可执行文件的编译与生成。其中也包括gcc(C编译器)和g++(C++编译器)。

编译单个文件为可执行文件:

g++ -Wall -W hello.cpp -o hello
编译多个文件为可执行文件:

g++ -Wall -W main.cpp hello_fun.cpp -o newhello
预处理
可以用gcc选项定义宏,-DNAME会定义一个名为NAME的宏。如g++ -Wall -DTEST dtest.cpp,定义了名为TEST的宏。定义的宏会对代码产生影响。
也可以为宏定义值,-DNAME=VALUE。如g++ -Wall -DNUM=100 dtestval.cpp,g++ -Wall -DNUM="2+2" dtestval.cpp,g++ -Wall -DMESSAGE="\"Hello,World!\"" dteststr.cpp。在代码中把宏用括号括起来是好习惯。

makefile文件
对于较大的工程,如果还像前文一样写命令行就太痛苦了。而使用makefile可以管理整个工程的编译规则,之后用一个make命令就可自动编译,相对方便很多。

makefile文件名应为Makefile或makefile

使用CMake自动生成makefile
当处理较大型的项目时,手动书写makefile就比较痛苦,这时用来用来自动化自动化工具makefile的自动化工具就是CMake。不过天下哪有那么便宜的事,它也是要写自己的CMakeLists.txt的。
推荐书籍《CMake实践》《Mastering CMake》和官网帮助。

简介

CMake是一个跨平台的自动化建构系统,它是用一个名为CMakeLists.txt的文件来描述构建过程,可以产生标准的构建文件,如Unix的makefile或Windows Visual Studio的projects/workspaces。
文件CMakeLists.txt需要手工编写,也可以通过编写脚本进行半自动的生成。

在Linux平台下使用CMake生成makefile并编译的流程如下:

安装CMake。在Ubuntu上安装cmake很简单$sudo apt-get install cmake。如果想要其Qt图形界面另需安装sudo apt-get install cmake-qt-gui。一般不需要,在Ubuntu系统上用ccmake就可以了。
编写CMakeLists.txt。
运行CMake。用cd将当前目录设为生成目标目录,执行命令ccmake srcdir(文字界面)或cmake -i(交互命令行),如果想使用Qt图形界面使用cmake-gui。
Makefile已经生成。使用make命令进行编译。
如果想清理工程。使用make clean。
cmke学习参考:https://www.cnblogs.com/wainiwann/p/6497791.html

代码调试
gdb
gdb是一个用来调试C和C++程序的功能强大的调试器,能在程序运行时观察程序的内部结构和内存使用情况。
gdb主要提供以下功能:

监视程序中变量的值的变化。
设置断点,使程序在指定的代码行上暂停执行,便于观察。
单步执行代码。
分析崩溃程序产生的core文件。
为使gdb能正常工作,必须在程序编译时包含调试信息。即-g选项。

简单的调试步骤示例
载入test可执行文件gdb test
运行run。
查看程序出错的地方where。
查看出错函数附近的代码list。
打开堆栈backtrace。
单步调节next或step。
查看可疑表达式值print var。
在可疑行打断点break 8。
重新运行会在断点处停止。用set variable修改变量值。
继续运行continue。看结果是否正确。
退出gdbquit。

 

CMakeList.txt 文件修改
修改CMakeList.txt 加入

SET(CMAKE_BUILD_TYPE "Debug") 
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb")
SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")
        原因是CMake 中有一个变量 CMAKE_BUILD_TYPE ,可以的取值是 Debug Release RelWithDebInfo >和 MinSizeRel。
当这个变量值为 Debug 的时候,CMake 会使用变量 CMAKE_CXX_FLAGS_DEBUG 和 CMAKE_C_FLAGS_DEBUG 中的字符串作为编译选项生成 Makefile;
重新编译

cmake -DCMAKE_BUILD_TYPE=Debug Path
参考链接:https://blog.csdn.net/gdp12315_gu/article/details/45063479

程序参数输入
gdb调试时,程序路径后跟的参数为gdb的参数,程序的参数需在运行时输入:

gdb test
run par1 par2
gdb学习链接:

https://www.cnblogs.com/life2refuel/p/5396538.html

http://blog.sina.com.cn/s/blog_a573f7990101k58w.html

参考文献:

https://www.cnblogs.com/BlueMountain-HaggenDazs/p/6426465.html

https://blog.csdn.net/weixin_35477207/article/details/78165411

链接:https://blog.csdn.net/lsacaner/article/details/92800216

debian 下使用qtcreator,c++11 ,boost 1.先装gcc sudo apt-get install gcc 2.再装qt 用apt-get下载到4.7版本的,太低。 于是自己下载了一个qt5的bz压缩文件,传送过去,自动安装。 bash中输入qtcreator, 已经自动配置完毕了gcc,qt库,直接建工程可以写c++程序了 3.配置c++11 首先检查了gcc版本,发现支持c++11。 于是直接在.pro 阅读详情

相关推荐

在Debian 11上安装GCC

通过遵循这些简单的步骤,您已经成功安装了GCC并成功编译了一个简单的C程序。现在,您可以开始使用GCC来开发和编译各种编程项目。步骤3:使用GCC编译Hello World程序 一旦安装了GCC,您可以立即开始编译程序。步骤2:安装GCC GCC通常包含在Debian的基本存储库中,您可以使用APT包管理器轻松安装它。步骤1:更新系统 在安装任何软件之前,请确保您的Debian系统是最新的。

落拓子ю的博客 2144

ubuntu 下安装C/C++ 开发环境

ubantu 并没有提供C/C++的编译环境,单独安装gcc以及g++比较麻烦,Ubuntu提供了一个build-essential软件包,安装了该软件包,编译c/c++所需要的软件包也都会被安装。下载地址:https://www.jetbrains.com/zh-cn/clion/download/download-thanks.html?需要修改cmake,gcc,g++的路径,这3个的安装路径在 /usr/bin下。3、安装 Clion - 这个安装比较简单,就是将安装包解压就可以使用了。.....

每一个不曾起舞的日子,都是对生命的辜负 2万+

Linux C/C++开发环境搭建:从GCC到VSCode的完整指南

在软件开发领域,构建系统与工具链是项目成功的基石。理解编译、链接和调试的基本原理,是每位C/C++开发者必须掌握的核心技能。通过合理配置开发环境,不仅能提升代码质量与开发效率,更能深入理解程序从源码到可执行文件的完整生命周期。在Linux平台上,GCC编译器和GDB调试器构成了原生工具链的核心,结合自动化构建工具如Make,可以实现高效的项目管理。而现代代码编辑器如VSCode,通过智能感知和集成调试功能,极大地优化了开发体验。本文聚焦于**Linux环境搭建**与**VSCode配置**,详细演示如何从零

weixin_34192816的博客 424

在Ubuntu环境下安装VS Code并且配置C++环境

在公司新电脑上,需要在新的ubuntu环境中安装新的VS Code以及配置C++相关的环境,与Win环境下相比,在Ubuntu中配置环境更简单些。3、 进行debug环境的配置(完成上面的配置能够进行正常的运行了,如有bug可以留言,博主进行补充)2、安装Runner插件,与上面一样,点进去下载安装,几秒钟即可安装好。完成以上这些,即可进行debug操作。

北屿的博客 1万+

VSCode搭建C/C++开发环境:从零配置到高效调试完整指南

在软件开发中,集成开发环境(IDE)和代码编辑器是程序员的核心工具,它们直接影响编码效率和项目质量。传统IDE如Visual Studio虽然功能全面,但往往体积庞大、启动缓慢;而轻量级编辑器配合插件生态,则能实现灵活定制与快速响应。VSCode作为一款跨平台、可扩展的现代编辑器,通过配置编译器路径、安装语言扩展和调试工具,能够构建出媲美专业IDE的C/C++开发环境。其核心价值在于平衡了轻量化与功能性,支持智能感知、集成调试和项目管理,适用于算法学习、竞赛编程和中小型项目开发。本文聚焦于VSCode环境配

weixin_33895475的博客 466

基于Dev Containers构建标准化C/C++开发环境:从Dockerfile到VSCode调试全流程

在软件开发中,环境配置不一致是导致“在我机器上能跑”问题的常见根源,尤其对于C/C++这类系统级编程语言。容器化技术通过将运行时环境与应用程序打包,实现了环境隔离与一致性,其核心原理是利用操作系统级虚拟化提供独立的文件系统、网络和进程空间。这一技术为开发工作流带来了革命性价值,使得开发、测试、部署环境能够高度统一,极大提升了团队协作效率和项目可复现性。在工程实践中,结合VSCode的Dev Containers扩展,开发者可以快速构建包含完整工具链(如GCC、GDB、CMake)的标准化开发环境,并通过预构

weixin_33743703的博客 522

Unix/Linux环境C编程入门教程(4) Debian Linux环境搭建

安装 DebianCCPP开发环境 1.广义的Debian是指一个致力于创建自由操作系统的合作组织及其作品,由于Debian项目众多内核分支中以Linux宏内核为主,而且 Debian开发者 所创建的操作系统中绝大部分基础工具来自于GNU工程,因此 “Debian” 常指DebianGNU/Linux。  2. 创建一个虚拟机 3.我们定制workstation10.04.我们选择稍后安装操作系统

尹成的技术博客 3271

VSCode配置C/C++项目:从Makefile到CMake的完整开发环境搭建

在C/C++开发中,集成开发环境(IDE)的配置直接影响开发效率。VSCode作为轻量级编辑器,通过插件和配置文件可实现媲美传统IDE的功能。其核心原理在于利用JSON配置文件(c_cpp_properties.json、tasks.json、launch.json)分别管理代码分析、构建任务和调试配置,配合GCC/Clang编译器与GDB调试器形成完整工具链。技术价值在于提供跨平台、可版本控制的开发环境配置方案,特别适合管理包含多模块、外部库依赖的复杂项目。应用场景涵盖嵌入式开发、系统编程、开源项目维护等

germmy-神一样的开发 392

debian 11 虚拟机环境搭建过坑记录

原来去 debian 官网下载了一个最新的 debian 12,安装后可以包依赖问题,搞了半天,卸载安装了半天,赶时间放弃了。。。后下载了 debian 11,这里选择下载 :https://cdimage.debian.org/cdimage/archive/果然还是 debian 11 靠谱,基本一次就搞定了。

feitingfj的博客 1572

VSCode搭建C/C++开发环境:从编译器配置到调试全流程指南

集成开发环境(IDE)是现代软件开发的核心工具,它通过整合代码编辑、编译构建、调试测试等功能,极大提升了开发效率。其工作原理是提供统一的图形界面,调用底层编译器(如GCC、Clang)和调试器(如GDB),实现代码到可执行程序的转换与问题排查。对于C/C++这类系统级语言,一个配置得当的IDE能精准管理头文件路径、编译参数和调试符号,其技术价值在于将复杂的命令行操作可视化、自动化,降低学习曲线,保障项目构建的一致性。常见的应用场景包括桌面应用开发、嵌入式编程、算法学习和系统工具编写。本文聚焦于轻量且强大的编

weixin_34007906的博客 431

C/C++开发环境配置:从VSCode到CMake的工程化实践指南

在软件开发中,构建系统是连接源代码与可执行产物的关键桥梁,它管理着编译、链接等复杂过程。其核心原理在于通过定义明确的规则和依赖关系,将高级语言转化为机器指令。对于C/C++这类接近底层的语言,构建系统的价值尤为突出,它直接决定了项目的可移植性、可维护性和团队协作效率。在实际应用场景中,开发者常面临跨平台编译、依赖管理、环境一致性等挑战。本文聚焦于**VSCode**与**CMake**的深度集成,通过解析编译器、构建工具与IDE的三者关系,提供一套从单文件调试到复杂项目管理的可迁移、可复现的工程化解决方案,

weixin_34253126的博客 409

debian/ubuntu 安装c++开发环境 (2)

代码】debian/ubuntu 安装c++开发环境 (2)

jiegemena的博客 1007

2026年VSCode配置C/C++开发环境:从编译调试到CMake工程化

在软件开发中,集成开发环境(IDE)的配置是项目启动的关键步骤,它直接影响到编码效率和调试体验。其核心原理在于构建工具链的协同工作,即编辑器通过配置文件调用编译器、调试器和构建系统,形成完整的开发闭环。掌握这一流程的技术价值在于实现环境配置的可复现性和问题自主排查能力,告别依赖特定IDE或“玄学配置”。无论是学习C/C++基础语法,还是开发跨平台应用,一个稳定高效的开发环境都是必备基础。本文聚焦于VSCode这一轻量级编辑器,通过配置tasks.json实现编译任务自动化,并利用launch.json集成G

weixin_33816946的博客 478

Miniconda-Python3.11镜像兼容CentOS/Ubuntu/Debian系统

通过Miniconda-Python3.11镜像实现CentOS、Ubuntu、Debian间的无缝Python环境迁移,解决因系统库差异导致的依赖冲突问题。利用Conda的二进制包管理和静态链接技术,屏蔽glibc与动态库版本差异,确保AI研发环境的一致性与可复现性,适用于HPC、云主机及多系统协作场景。

weixin_35752233的博客 1069

小熊猫C++ IDE:零配置入门C/C++编程的轻量级开发环境

集成开发环境(IDE)是程序员编写、调试和运行代码的核心工具,其通过集成编辑器、编译器和调试器等组件,极大提升了开发效率。对于C/C++这类需要编译的语言,传统IDE往往需要复杂的编译器配置和环境变量设置,这对初学者构成了显著门槛。小熊猫C++(Red Panda C++)正是针对这一痛点设计的轻量级解决方案,它内置了MinGW-w64 GCC编译器,实现了真正的开箱即用。该IDE基于Qt框架开发,具备绿色便携、无需安装的特性,特别适合编程教学、竞赛准备和快速原型开发。其价值在于将学习者的注意力从繁琐的环境

weixin_33881140的博客 530

2026年VSCode配置C/C++开发环境:从零搭建到高效调试

C/C++作为系统级编程语言,其开发环境的配置一直是初学者和跨平台开发者的常见痛点。传统IDE往往体积庞大、平台绑定性强,而命令行工具链的学习曲线陡峭。现代开发工具链的核心在于实现编辑器、编译器与调试器的无缝集成,通过智能感知、代码导航和可视化调试提升开发效率与体验。Visual Studio Code凭借其轻量、跨平台和强大的插件生态,已成为搭建现代化C/C++开发环境的首选。通过配置MinGW-w64等编译器工具链,结合C/C++扩展插件,开发者能快速获得包括智能感知和图形化调试在内的全功能IDE体验。

weixin_33908217的博客 325

C/C++新手入门项目合集:GitHub资源库0voice/introduce_c-cpp_manual详解

C/C++作为系统级编程语言,其核心价值在于对计算机底层原理的深入理解和高效控制。从内存管理、指针操作到数据结构与算法,掌握这些基础概念是构建高性能应用的关键。在工程实践中,理论学习之后往往面临“如何将知识转化为实际项目”的痛点。开源社区为此提供了丰富的练手资源,其中GitHub上的项目合集成为开发者从入门到进阶的重要桥梁。这些资源覆盖了网络编程、并发处理、图形界面等核心应用场景,通过阅读和修改真实代码,能够有效提升工程思维和调试能力。本文聚焦的 `0voice/introduce_c-cpp_manual

weixin_30546189的博客 331

安装使用分布式C/C++编译器distcc

distcc安装指南

左手是诗,右手是代码。 3038
上一篇: go micro micro : command not found 和not authorized to perform this request
下一篇: CentOS pip install sasl问题 ubuntu pip install sasl
0x8g1T9E
博客等级 码龄8年 2万+粉丝 375原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值