我想在通过 mingw 交叉编译到 Windows 的项目上使用 libmysqlclient。为了链接我的程序,我需要“mysqlclient.a”,但我无法得到它。
我尝试为 mysql 客户端的 windows 上的 mingw 创建 makefile,但配置步骤失败。
我终于能够构建它...在 Windows 上使用 mingw。
以下是步骤:
- 安装cygwin
- 在你的 cygwin 中安装包 make、gcc、g++、cmake 和 cygidn
- 下载并解压 libmysql 源代码
- 编辑文件 strings/dtoa.c 并将所有出现的 替换
dtoa
为其他内容_dtoa
以防止冲突 - cd 到软件包库
- 在 mingw 中输入 cmake -G "Unix Makefiles"
- 制作
- 进行安装
- 编辑 C:\cygwin\usr\local\mysql\include\mysql.h 并在
#include <winsock.h> /* Bug win32 */
之后添加#define _mysql_h
- 您可以在“C:\cygwin\usr\local\mysql”中获取文件
我得到“libmysqlclient.a”和“liblibmysql.dll.a”并将我的程序与它们链接,但我仍然得到链接器错误。怎么了 ?但我仍然得到链接错误!
strings libmysqlclient.a | grep _mysql_ping
当链接器抱怨未定义对 `_mysql_ping@4' 的引用时返回结果