news 2026/4/15 12:20:56

linux 配置cpp环境 测试

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
linux 配置cpp环境 测试

安装 g++、gcc、make 等完整工具链
sudo apt update
sudo apt install build-essential -y
sudo apt-get install cmake -y
sudo apt install gdb -y

编译
g++ hello.cpp -o hello
./hello

显示所有警告
g++ -Wall -Wextra hello.cpp -o hello

包含调试信息(用于gdb调试)
g++ -g hello.cpp -o hello

O1 优化
g++ -O1 hello.cpp -o hello

O2 优化(常用)
g++ -O2 hello.cpp -o hello

O3 最大优化
g++ -O3 hello.cpp -o hello

编译多个文件
g++ main.cpp functions.cpp -o myprogram
./myprogram

使用cmake

CMakeLists.txt 文件

#CMakeLists.txt# 设置:版本cmake_minimum_required(VERSION3.20)# 定义:项目名称project(first_cmake)# 变成执行程序 # 参数:项目名字、源码名字、add_executable(first_cmake first_cmake.cpp)

first_cmake.cpp 文件

#include<iostream>usingnamespacestd;intmain(){cout<<"Hello, World!"<<endl;return0;}

run.sh 文件

# 使用下面步骤代替第一步,原因是有些cmake版本不支持(-S -B)参数mkdirbuildcdbuild cmake..cd../# 下面一样cmake --build build ./build/first_cmake

若使用vscode
配置如下
使用方式:
快速运行:Ctrl+Shift+B
调试:F5

launch.json

{"version":"0.2.0","configurations":[{"name":"调试程序","type":"cppdbg","request":"launch","program":"${workspaceFolder}/build/first_cmake","args":[],"stopAtEntry":false,"cwd":"${workspaceFolder}","environment":[],"externalConsole":false,"MIMode":"gdb","setupCommands":[{"description":"为 gdb 启用整齐打印","text":"-enable-pretty-printing","ignoreFailures":true}],"preLaunchTask":"编译"}]}

tasks.json

{"version":"2.0.0","tasks":[{"label":"编译","type":"shell","command":"cd${workspaceFolder}&& mkdir -p build && cd build && cmake .. && make","group":"build"},{"label":"编译并运行","type":"shell","command":"cd${workspaceFolder}&& mkdir -p build && cd build && cmake .. && make && echo '=== 运行程序 ===' && ./first_cmake","group":{"kind":"build","isDefault":true}}]}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 23:52:30

Umami主题定制深度指南:从界面诊断到个性化解决方案

Umami主题定制深度指南&#xff1a;从界面诊断到个性化解决方案 【免费下载链接】umami Umami is a simple, fast, privacy-focused alternative to Google Analytics. 项目地址: https://gitcode.com/GitHub_Trending/um/umami 您是否对Umami数据看板的默认界面感到审美…

作者头像 李华
网站建设 2026/4/12 13:23:44

终极指南:快速上手 react-diff-view 代码差异展示神器

终极指南&#xff1a;快速上手 react-diff-view 代码差异展示神器 【免费下载链接】react-diff-view A git diff component 项目地址: https://gitcode.com/gh_mirrors/re/react-diff-view 你是否曾经在代码审查时&#xff0c;面对密密麻麻的diff文本感到头晕眼花&#…

作者头像 李华
网站建设 2026/4/3 2:11:15

WeKnora终极性能优化指南:5大技巧让文档检索速度提升300%

WeKnora终极性能优化指南&#xff1a;5大技巧让文档检索速度提升300% 【免费下载链接】WeKnora LLM-powered framework for deep document understanding, semantic retrieval, and context-aware answers using RAG paradigm. 项目地址: https://gitcode.com/GitHub_Trendin…

作者头像 李华
网站建设 2026/4/12 21:20:25

18、命令行选项与类型化变量详解

命令行选项与类型化变量详解 1. 命令行选项处理的基础问题与 shift 命令 在处理命令行选项时,我们可能会尝试编写如下代码: if [ $1 = -o ]; then# 处理 -o 选项的代码1=$22=$3 fi # 正常处理 $1 和 $2...但这段代码存在几个问题: - 像 1=$2 这样的赋值是非法的,因…

作者头像 李华
网站建设 2026/4/11 0:09:31

终极指南:如何用GitHub Actions构建高效的自动化发布流水线

终极指南&#xff1a;如何用GitHub Actions构建高效的自动化发布流水线 【免费下载链接】BMAD-METHOD Breakthrough Method for Agile Ai Driven Development 项目地址: https://gitcode.com/gh_mirrors/bm/BMAD-METHOD 在当今快节奏的软件开发环境中&#xff0c;版本发…

作者头像 李华