繁体   English   中英

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

[英]How to build MySQL connector c++ with VS 2010 on a Windows x64 machine?

它似乎是一个PITA来获得我想要的:在Windows x64机器上运行MySQL Connector / C ++。

我已经尝试过的:

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

在Win x64机器上使用MySQL C ++连接器(使用VS2010构建)是否如此不寻常? 必须有一种更简单的方法来使其正常工作,对吗?

任何提示我都会感激不尽。

UPDATE

我想我应该更准确地解决构建错误:

首先,我补充道

<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服务器的包含文件中,但我认为连接器不需要服务器。

我刚刚在这里发表评论,说明C ++连接器与VS2010不兼容(即2011年10月)。

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM