ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

linux c++后端开发

linux c++后端开发

一、环境准备

1. 安装虚拟机

VMware17pro


2. 安装 Ubuntu server 22.04 LTS 操作系统

第一步:下载镜像文件
下载镜像ubuntu-22.04.x-live-server-amd64.iso文件

第二步:三种网络模式
①NAT模式(网络地址转换):
效果:你的Windows电脑变成一个“二级物业”,虚拟机躲在它身后,从你家的主路由器(一级物业)拿不到独立的门牌号。
缺点:外面的人(比如你将来想用手机或另一台电脑)无法直接访问你的虚拟机。这不利于我们后面做网络编程实验。
②桥接模式(Bridged):
效果:虚拟机直接向你家的主路由器(一级物业)申请一个独立的门牌号(IP地址)。它和你Windows电脑、你的手机是平等的网络设备,都在同一个网段(比如都是192.168.1.xxx)。
优点:你可以在Windows上用终端软件直接SSH连接虚拟机。
你将来写的Web服务器,手机连同一个WiFi就能直接访问测试。这最接近真实服务器的网络环境。
③仅主机模式(Host-Only):
效果:虚拟机和Windows组成一个完全封闭的小网络,和外界隔绝。
缺点:虚拟机无法上网,你无法下载任何软件包。完全不适用。
④结论【桥接模式就是我们要选的。】


3. 配置Ubuntu系统的网络和 SSH 服务

第一步:勾选安装SSH服务
按一下空格键,让它变成:

[X]Install OpenSSH server

第二步:保持密码认证的勾选
这意味着你之后可以通过输入用户名和密码来远程登录,简单直接

[X]Allow password authentication over SSH

第三步:账号密码登录

cppsecer login: yuhao password:1234

第四步:查看IP地址

ipaddr

4. 在 Windows 上用 WindTerm 远程连接

第一步:在虚拟机里确认IP地址
①登录后,输入查找命令,记下现在 ens33 或 eth0 下面 inet 后面的 IP 地址。

ipaddr|grepinet

第二步:在WindTerm新建会话:选择SSH连接
SSH 就是用来安全远程连接 Linux 服务器的协议
①输入主机IP192.168.1.101
②输入端口22
③点击 ”连接“
第三步:登录并验证


5. 更新系统

sudo:super user do(超级用户执行)
apt:Advanced Packaging Tool(高级软件包工具)
update:更新
upgrade:升级

sudoaptupdate# 以管理员身份,刷新本地软件包列表。sudoaptupgrade-y# 以管理员身份,升级所有可更新的软件,并且自动确认安装。

6. 安装 C++ 编译器、调试器、构建工具和网络库

第一步:安装c++开发工具链
aptAdvancedPackagingTool,Ubuntu 的包管理工具。
build-essential:构建必需品。这是一个软件包集合,里面包含了 gcc、g++、make 等编译 C/C++ 程序最基本的工具。装它相当于一次性把 C++ 编译器全家桶装好。
gdbGNUDebugger(GNU 调试器),用于调试程序,让你能一行行看代码如何运行、变量值怎么变化。
cmakeCross-platformMake(跨平台构建工具),用于管理大型项目的编译过程。很多专业 C++ 项目都是用 CMake 来组织编译的。

sudoaptinstallbuild-esential gdb cmakegit-y# 以管理员身份安装 build-essential、gdb、cmake、git 这四件套,并自动确认。

第二步:安装网络编程开发库
aptAdvancedPackagingTool,Ubuntu的包管理工具。
libssl-devSSLSecureSocketsLayer,安全套接字层)开发库。lib 是 library(库)的缩写,dev 是development(开发)的缩写。这个库提供了加密通信(HTTPS等)的功能接口。你将来写网络程序时,处理加密连接会用到它。

sudoaptinstalllibssl-dev-y

7. 环境验证

第一步:创建项目目录

mkdir~/cpp_projects

mkdirmakedirectory(创建目录)。
~/cpp_projects:目标路径。
~:表示当前用户的根目录
整句意思:在家目录下创建一个名叫 cpp_projects 的文件夹,用来放 C++ 项目代码。


第二步:进入项目目录

cd~/cpp_projects

cdchangedirectory(切换目录)。相当于双击进入某个文件夹。
~/cpp_projects:同上,没目标目录的路径。
整句意思:进入刚才创建好的 cpp_projects 目录。


第三步:用nano编辑器写一个C++测试文件
用 nano 编辑器创建一个名为 hello.cpp 的 C++ 源码文件。

nanohello.cpp

nanoNano,linux自带的简易文本编辑器,可以在终端里直接编辑文件。
hello.cpp:要创建或编辑的文件名,.cpp后缀代表这是C++源码文件。

执行后编写代码:终端界面会变成nano的编辑界面,你会看到一个空白的文件。在里面输入:

#include<iostream>intmain(){std::cout<<"Hello, C++ Sever!"<<std::endl;return0;}

保存并退出nano
·输入完代码后,ctrl + o:(Output 输出)保存;
·底部会提示·File Name to Write: hello.cpp,直接按回车确认保存;
·然后按ctrl + x(Exit 退出)退出nano关闭编辑器回到终端。


第四步:编译源代码

g++ hello.cpp-ohello

g++GNU C++compiler(GNU C++ 编译器)。把我们写的文本代码翻译成机器能跑的 0/1 指令。我们之前聊的编译原理,就是这个工具在实际执行。
hello.cpp源文件,就是你刚才写的那个文本文件。
-o:output(输出),后面跟一个名字,表示编译生成的可执行文件叫什么。
hello:你要生成的可执行文件的名字。如果不加-o hello,编译器默认会生成一个叫a.out的文件。
整句意思:用 g++ 编译器,把 hello.cpp 编译成一个名叫 hello 的可执行文件。


第五步:运行程序

./hello

./:当前目录
.:代表当前目录
./hello:合起来,就是“当前目录下的hello文件”。Linux 默认不会搜索当前目录下的可执行文件,必须明确指定./
整句意思:执行当前目录下名叫 hello 的程序。
预期结果:

Hello, C++ Server!


附1. tree命令

Linux 自带一个专门以树状结构显示目录的命令,叫tree
不过,Ubuntu Server 默认没有安装它,我们先花半分钟装一下。
① 安装 tree

sudoaptinstalltree-y# 安装tree

② 查看当前目录

tree# 查看当前目录

③ 查看指定目录

tree ~/指定目录

④ 只显示 2层深度(-L是Level)

tree-L2


附2. home目录

①配置文件
②系统状态文件
③项目与数据目录
④安全与远程链接



二、C++面向对象速成

(一)

(二)

(三)

返回列表