1)安装准备
首先你可能需要把 gcc、g++、make、cmake、git 安裝起來(以 Ubuntu 為例):
sudo apt-get install gcc g++ make cmake git
2)下载安装pistcahe
git clone https://github.com/oktal/pistache.git
//安装
cd pistache
mkdir build
cd build
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
make
sudo make install
//若上述安装失败,需要参考git官网使用meson编译的方式
//1.meson的安装
$ sudo apt install meson ninja-build
提示错误1:找不到openssl
https://blog.csdn.net/u013641339/article/details/47172651
提示错误2:找不到libcurl
https://blog.csdn.net/a924282761/article/details/127174871
//2.meson编译
$ cd pistache
$ meson setup build \
--buildtype=release \
-DPISTACHE_USE_SSL=true \
-DPISTACHE_BUILD_EXAMPLES=true \
-DPISTACHE_BUILD_TESTS=true \
-DPISTACHE_BUILD_DOCS=false \
--prefix="$PWD/prefix"
$ meson compile -C build
$ meson install -C build
3. 使用
//1)编写示例代码
参考git官网
#include <pistache/endpoint.h> using namespace Pistache; struct HelloHandler : public Http::Handler { HTTP_PROTOTYPE(HelloHandler) void onRequest(const Http::Request&, Http::ResponseWriter writer) override { writer.send(Http::Code::Ok, "Hello, World!"); } }; int main() { Http::listenAndServe<HelloHandler>(Pistache::Address("*:9080")); }
2)编译(不要用qt自带的编译套件,用gcc命令编译)
g++ --std=c++11 server.cpp -lpistache -o hellopis
错误提示1): 对‘pthread_create’未定义的引用
编译的时候加上:-lpthread
3)验证:
在一个终端执行./hellopis执行程序
在另一个终端输入:curl http://localhost:9080/
查看回显会显示“Hello,World”
参考: