CentOS 中 C++ 网络编程配置指南
一 环境准备与工具链安装
sudo yum update -ysudo yum groupinstall "Development Tools" -ysudo yum install gcc gcc-c++ make gdb -ysudo yum install boost-devel libcurl-devel openssl-devel libevent-devel -y二 使用 POSIX socket 的最小示例与编译
#include <sys/socket.h> #include <netinet/in.h> #include <unistd.h> #include <cstring> #include <iostream>socket() → bind() → listen() → accept() → read()/send() → close()#include <sys/socket.h> #include <arpa/inet.h> #include <unistd.h> #include <cstring> #include <iostream>socket() → connect() → send()/recv() → close()g++ -o server server.cpp -std=c++11 与 g++ -o client client.cpp -std=c++11./server,再 ./client(同一主机测试可用 127.0.0.1:8080)三 使用 Boost.Asio 的示例与编译
g++ server_asio.cpp -o server_asio -lboost_system -lpthread -std=c++11./server_asio,可用 telnet 127.0.0.1 12345 或编写简单客户端测试。四 使用 libcurl 发起 HTTP 请求
sudo yum install libcurl-devel -yg++ http_get.cpp -o http_get -lcurl -std=c++11五 常见问题与排障
gcc/g++ --version),必要时重装 gcc-c++。boost-devel、libcurl-devel、openssl-devel)。ss -tulpen | grep 8080 或 netstat -tulpen | grep 8080 检查并释放端口。-lboost_system -lpthread-lcurlsudo firewall-cmd --add-port=8080/tcp --permanent && sudo firewall-cmd --reload(或对应防火墙工具)。gdb ./your_app 进行断点调试,结合日志与返回值定位问题。