Linux 服务器下C++开发找不到mysql.h

问题背景

腾讯云服务器,linux centOS7 内核 ,mysql 版本5.5 为宝塔腾讯云版自动安装
C++用cmake编译时找不到mysql.h

解决

1.首先尝试yum安装mysql-devel包,但是yum让我直接下载了mariadb相关的包,
下载时它,与原有包冲突bt-mysql55-5.5.62-1.el7.x86_64,
但是删除原有包后mysql启动有问题
所以形成问题闭环
2.意识到应该是有库但是编译连接位置不正确,linux下直接搜索mysql.h,

find / -name mysql.h

结果:

/www/server/mysql/include/mysql.h

静态库 -I(一般是include),动态库 -L(一般是lib)
在cmake中链接该路径即可

cmake如下

server: main.cpp  ./timer/lst_timer.cpp ./http/http_conn.cpp ./log/log.cpp ./CGImysql/sql_connection_pool.cpp  webserver.cpp config.cpp
	$(CXX) -o server  $^ $(CXXFLAGS) -lpthread -L /www/server/mysql/lib/ -lmysqlclient  -I /www/server/mysql/include/  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值