当前位置: 首页 > news >正文

[笔记] TinyWebServer编译及demo运行过程

文章目录

  • 前言
  • 环境搭建
    • ubuntu
    • mysql 8.0
    • c/c++
    • 开启root用户
    • TinyWebServer
  • 搭建及编译过程
  • 运行结果
    • 常见问题
      • ./threadpool/../CGImysql/sql_connection_pool.h:6:10: fatal error: mysql/mysql.h: No such file or directory
      • ./server运行后直接退出了


前言

哎 也就帮帮新手看看问题 没想到一遍就顺利弄好 把我整蒙了

环境搭建

ubuntu

ubuntu-22.04.5-desktop-amd64

mysql 8.0

sudo apt install -y mysql-server

mysql 执行命令改密码,创建数据库test,和user表 插入用户和密码:

sudo mysqld -uroot # 第一次安装mysql8.0不需要密码 直接回车

创建表啥的跟这个官网新手教程一样
https://github.com/qinguoyi/TinyWebServer

// 建立yourdb库
create database yourdb;

// 创建user表
USE yourdb;
CREATE TABLE user(
    username char(50) NULL,
    passwd char(50) NULL
)ENGINE=InnoDB;

// 添加数据
INSERT INTO user(username, passwd) VALUES('name', 'passwd');

c/c++

sudo apt install make gcc g++

开启root用户

sudo passwd root 

改个root密码

TinyWebServer

https://github.com/qinguoyi/TinyWebServer

搭建及编译过程

    8  apt install git
    9  git clone https://github.com/qinguoyi/TinyWebServer.git
   10  ls
   11  sudo apt search mysql-server
   12  sudo apt install -y mysql-server
   13  ps -ef|grep mysql
   14  sudo systemctl enable mysql
   15  sudo systemctl status mysql
   16  sudo mysql -uroot -p
   17  cd TinyWebServer/
   18  ls
   19  gedit main.cpp 
   20  sh ./build.sh
   21  apt install make
   22  sh ./build.sh
   23  sudo apt install gcc g++
   24  sh ./build.sh
   29  sudo apt install libmysqlclient-dev
   30  sh ./build.sh
   31  ls
   32  ll
   33  ./server

编译过程

sh ./build.sh
./server

运行结果

在这里插入图片描述


常见问题

./threadpool/…/CGImysql/sql_connection_pool.h:6:10: fatal error: mysql/mysql.h: No such file or directory

mysql的依赖头文件没有找到 安装mysql动态库到系统环境就好

sudo apt install libmysqlclient-dev

./server运行后直接退出了

可能原因 没有使用root权限运行

su # 提权后在运行./server
关于博主

wx/qq:binary-monster/1113673178 (添加时注明来意,否则不予通过)
wxgzh: 二进制怪兽
CSDN:https://blog.csdn.net/qq1113673178
码云:https://gitee.com/shiver
Github: https://github.com/ShiverZm
个人博客:https://www.binary-monster.top

相关文章:

  • 什么是PHP伪协议
  • 详细解释计算机系统中的大小端
  • Unity摄像机基本操作详解:移动、旋转与缩放
  • qt实现一个简单http服务器和客户端
  • 前端(vue)学习笔记(CLASS 5):自定义指令插槽路由
  • 熔断降级(Sentinel解决)
  • 在OpenGL ES中将值传入shader的方法总结
  • 一条不太简单的TEX学习之路
  • 论文阅读:Attention is all you need
  • 从PGC到AIGC:海螺AI多模态内容生成系统的技术革命
  • android 音量调节
  • 【第二十八周】:Temporal Segment Networks:用于视频动作识别的时间分段网络
  • vue3配置代理实现axios请求本地接口返回PG库数据【前后端实操】
  • 【回归算法解析系列12】分位数回归(Quantile Regression)
  • JAVA读取/解析 指定文件内容
  • 使用 Spring Security的一些常用功能
  • 众乐影音-安卓NAS-Player的安装和设置说明
  • Beyond Compare 4注册激活方法
  • 农用车一键启动工作原理
  • docker简单使用
  • 美航母撞船后又遇战机坠海,专家:长时间作战部署疲于奔命是主因
  • 向总书记汇报具身智能发展的“稚辉君”:从期待到兴奋再到备受鼓舞
  • 王毅会见泰国外长玛里:坚决有力打击电诈等跨境犯罪
  • 我国成功发射卫星互联网低轨卫星
  • 【社论】优化限购限行,激发汽车消费潜能
  • 特朗普的百日执政支持率与他“一税解千愁”的世界观和方法论