libmysqlclient编译
一、编译libmysqlclient
一、下载地址
二、编译方法
#获取libmysqlclient
wget https://github.com/mariadb-corporation/mariadb-connector-c/archive/refs/tags/v_2.3.7.tar.gz
# 解压libmysqlclient源码
tar -zxvf mariadb-connector-c-v_2.3.7.tar.gz
# 进入源码文件夹
cd mariadb-connector-c-v_2.3.7/
# 编译makefile 文件
cmake .
# 修改CMake文件,将
vim CMakeCache.txt
# enables SSL support 关闭ssl支持
WITH_OPENSSL:BOOL=OFF
# 编译源码
make :
三、编译结果
二、编译libconfig
一、下载地址
二、编译方法
#获取libconfig
wget https://github.com/hyperrealm/libconfig/archive/refs/tags/v1.5.tar.gz
# 解压libconfig源码
tar -zxvf v1.5.tar.gz
# 进入源码文件夹
cd libconfig-1.5/
# config.status: error: cannot find input file: `Makefile.in'
aclocal
libtoolize --force
# libtoolize 不是命令
#yum install autoreconf
#yum install autoconf
#yum install aclocal
#yum install automake
#yum install libtool
automake --add-missing
autoconf
autoheader
# 编译makefile 文件
./configure
# 'aclocal-1.14' is missing on your system
sudo autoreconf -ivf
# 解决 'makeinfo' is missing on your system.
# ubuntu:
sudo apt-get install texinfo
# centos:
yum install texinfo
#统信系统
yum install -y automake
yum install -y libtool
aclocal
libtoolize --force
automake --add-missing
#ubuntu 修改
`lib/grammar.c`
#注释掉所有的grammar.y
//#line 395 “grammar.y” /* yacc.c:1906 */
# 编译源码
make
三、编译结果
三、编译Libson
./configure
make
四、编译libevhtp.h
# ubuntu apt install cmake
# 缺少openssl
# apt-get install libssl
#修改源码文件 evhtp.h
#define EVHTP_DISABLE_SSL 1
cmake .
make
五、编译 mariadb-connector-c-v_2.3.7
# ubuntu 和 统信 修改
# cmake/ConnectorName.cmake
# No rule to make target '/usr/lib64/libc.so', needed by 'libmariadb/libmariadb.so.2'. Stop.
# ln -s /usr/lib64/libc.so /usr/lib/x86_64-linux-gnu/libc.so
cmake .
make
六、安装gmssl
ubuntu 修改test/build.info
# ubuntu修改Configure
# use if $^O ne "VMS", 'File::Glob' => qw/:glob/;
./config
make