提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
FastCgi 的C++库 —— FastCgi++ / FastCgipp
FastCgi是一个C语言的库,FastCgi++使用OOP设计,能使用C++来开发FastCgi程序。
提示:以下是本篇文章正文内容,下面案例可供参考
一、编译条件
FastCgi++编译需要boost库、boost库中iostream文件需要 bz2和libz库的支持;
1、编译环境 :ubntu 14.04
2、编译器:boost库 arm-linux-gnueabihf-gcc
二、开始编译
1.交叉编译boost库文件
在/data/文件夹下新建boost文件夹
mkdir tar obj
交叉编译zlib
1、下载zlib
zlib是提供数据压缩用的函式库,使用DEFLATE算法,最初是为libpng函式库所写的,后来普遍为许多软件所使用。此函式库为自由软件,使用zlib授权。
2、下载zlib源码包
https://jaist.dl.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.gz
3、交叉编译zlib步骤
tar zxf zlib-1.2.11.tar.gz
cd zlib-1.2.11
export CC=arm-linux-gnueabihf-gcc (设置交叉编译环境)
./configure --prefix=/data/boost/obj/
make
make install
原文链接:https://blog.csdn.net/sj_wll/article/details/74567323
交叉编译bz2
1、下载bzip2安装包
Download bzip2 from SourceForge.net
2、解压
tar -zxvf bzip2-1.0.6.tar.gz
3、进入离线安装包目录
cd bzip2-1.0.6
修改makefile
修改Makefile如下内容:
# To assist in cross-compiling
CC=arm-linux-gnueabihf-gcc
AR=arm-linux-gnueabihf-ar
RANLIB=arm-linux-gnueabihf-granlib
LDFLAGS=
BIGFILES=-D_FILE_OFFSET_BITS=64
CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
#注意:64位下,上面一句-O2 需改为-O3 加上-fPIC
# Where you want it installed when you do 'make install'
PREFIX=/data/boost/obj/
#屏蔽test部分
all: libbz2.a bzip2 bzip2recover test
#上面这一句去掉test
4、开始安装
make && make install PREFIX=/data/boost/obj/
原文链接:https://blog.csdn.net/liu_xinglfz/article/details/122679122
交叉编译 bzip2_bugmaker01的博客-CSDN博客_bzip2交叉编译
交叉编译boost库
boost库交叉编译(Linux生成ARM的库) - 程序员大本营
【原】Boost下载安装编译配置使用指南(含Windows、Linux以及ARM Linux) - Terry Wang - 博客园
boost交叉编译(arm)_qsqya的博客-CSDN博客_boost交叉编译
Boost Arm 交叉编译_FlyWine的博客-CSDN博客_arm boost
1、下载
Boost C++ Libraries下载最新版boost安装包, boost_1_59_0.tar.gz
Download Boost C++ Libraries from SourceForge.net
tar -zxvf boost_1_59_0.tar.gz
cd boost_1_59_0 ./bootstrap.sh --prefix=/data/boost/obj/
修改project-config.jam
if ! gcc in [ feature.values <toolset> ]
{
using gcc : arm : arm-linux-gnueabihf-gcc ;
}
./bjam 执行编译
附加编译iostreams库
./bjam --with-iostreams -s BZIP2_INCLUDE=data/boost/obj/include -s BZIP2_LIBPATH=data/boost/obj/lib -s ZLIB_INCLUDE=data/boost/obj/include -s ZLIB_LIBPATH=data/boost/obj/lib --layout=tagged variant=debug,release link=static,shared runtime-link=shared threading=multi stage
./bjam install 即进行安装
2、交叉编译fastcgi++
一个好用且方便的FastCgi C++库 - FastCgi++
1、下载 源码:最新版本为2.1版本 http://download.savannah.nongnu.org/releases/fastcgipp/fastcgi++-2.1.tar.bz2
fastcgi++应用初探_IT_small_farmer的博客-CSDN博客_fastcgi++
mdir fastcgi++/tar obj
2、
tar -xvjf fastcgi++-2.1.tar.bz2
./configure --prefix=/data/fastcgi++/obj --with-boost=/data/boost/obj --host=arm-linux-gnueabihf --disable-shared --enable-static
make && make install