gpt4 book ai didi

c++ - 如何在 Windows x64 机器上使用 VS 2010 构建 MySQL 连接器 c++?

转载 作者:可可西里 更新时间:2023-11-01 08:53:39 25 4
gpt4 key购买 nike

得到我想要的东西似乎是一个 PITA:在 Windows x64 机器上工作的 MySQL Connector/C++。

我已经尝试过的:

  • 我首先尝试了 MySQL 下载站点上的二进制包,我不得不从其他地方添加缺少的包含文件 (sqlstring.h)(参见 here)
  • 然后我的测试代码编译了,但没有运行,因为缺少 libmysql.dll(同样不包含在二进制包中)
  • 我发现 Connector/C 包中包含此 dll,因此我从那里获取了它。现在,我的连接器工作正常......在 Debug模式下。但是当我处于 Release模式时,真的会发生奇怪的事情。有时,应用程序在尝试连接时会在没有任何警告的情况下退出。有时它会告诉我在非常简单的语句 (SELECT * FROM sometable) 中有一个 SQL 语法错误,它在 Debug模式下运行良好。
  • 然后我发现了here最好从源代码构建连接器,所以我尝试了。 C++ 连接器需要 C 连接器,在遇到一些麻烦后(我不得不修补 CMakeFile.txt 因为这个 bug )我设法构建了 C 连接器。
  • 我还设法使用 CMake 为 C++ 连接器生成了 VS 解决方案,但现在我被卡住了。由于缺少一些包含文件,构建错误太多了……我不知道这是我的 CMake 配置问题,还是它不能与 VS2010 一起使用,或者它是否只是错误。

在 Win x64 机器上使用 MySQL C++ 连接器(使用 VS2010 构建)就这么不寻常吗?一定有更简单的方法让它工作,对吧?

如有任何提示,我将不胜感激。

更新

我想我应该更准确地指出我的构建错误:

首先,我添加了

<path_to_mysql_connector_cpp_build>
<path_to_mysql_connector_cpp_build>\cppconn
<path_to_mysql_connector_cpp_build>\driver\nativeapi

mysqlcppconnmysqlcppconn-static 项目包含目录,以便找到 config.hcppconn/config .hdriver/nativeapi/binding_config.h 包含文件。

但是现在,一些 my_global.h 文件丢失了,我找不到它了。它似乎在 MySQL 服务器的包含文件中,但我认为连接器不需要该服务器。

我刚找到一条评论 here ,声明 C++ 连接器与 VS2010 不兼容(那是在 2011 年 10 月)。

如果从 MySQL 下载站点预构建的二进制文件无法正常工作,我该怎么办?

最佳答案

我最终使用了 MySQL Connector/C 并编写了我自己的 C++ 包装器。目前它非常简单并且缺少很多功能,但每次我必须使用它时我都会添加功能。

我不太喜欢 MySQL Connector/C++,因为它不是以 RAII 风格编程的。

关于c++ - 如何在 Windows x64 机器上使用 VS 2010 构建 MySQL 连接器 c++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9266554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com