在windows中将libmysql.lib与gcc或dev c++链接
link libmysql.lib with gcc or dev c++ in windows
我一直在尝试将mysql与c++链接。下面是ref 的代码
名为sqlfunction.cpp的文件有以下代码,可以帮助连接mysql
#include <mysql.h>
#include "rlmodbusclient.h"
#include "modbusdaemon.h"
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
bool Opendb(char *pc,char *user, char *pass, char *db)
{
conn = mysql_init(NULL);
// Connect to database
if (!mysql_real_connect(conn, pc,
user, pass, db, 0, NULL, 0)) {
fprintf(stderr, "%sn", mysql_error(conn));
return 0;
} else return 1;
}
现在,如果上面从程序文件调用,比如这个
char pc[10]="localhost",user[5]="root",pass[8]="pass",db[6]="database";
ret = Opendb(pc,user,pass,db);
printf("opendb_buttonevent = %dn",ret);
这一切都很好,但唯一的问题是程序根本没有编译
错误是对的未定义引用mysql_init@4'
我找到了一个解决方案,那就是
http://www.openwebspider.org/documentation/how-to-link-libmysqllib-with-dev-c-or-gcc-under-windows/
该链接建议使用libmysql.lib 运行reimp.exe
我试着运行这个,但这没有任何意义。如果有人已经做了以上的事情,请解释如何使用reimp来解决这个问题。。
感谢
只是想添加一个命令,我正在使用它来运行重新映射
C:Documents and SettingsXPMUserDesktopmingwutilsbin>reimp.exe "C:Program F
ilesMySQLMySQL Server 5.5liblibmysql.lib"
reimp.exe: dlltool: No such file or directory
可以看出,上面写着dlltool:没有这样的文件,但我发现dlltool是C: \MinGW\bin目录。。。这没有任何意义?????
一般问题是libmysql.lib库是Microsoft特定的lib格式,而mingw无法链接该格式。似乎reimp.exe可以转换这样的库,并且需要dlltool来完成。它可能找不到它,因为它不在您的PATH中。尝试
设置PATH=%PATH%;C: \MinGW\binreimp.exe"C:\Program Files\MySQL\MMySQL Server 5.5\lib\libmysql.lib">
之后,您应该获得一个libmysql.a文件,该文件必须移动到mingw链接器可以找到的地方,例如您的项目目录。
相关文章:
- 请发现它在 dev 中工作的错误,但在 hackerrank 中不起作用
- 无法在 dev-c++ 上编译程序?
- Dev c++ mingw 不再编译
- 如何在 Windows 上将bcrypt_gensalt与 /dev/urandom 一起使用?
- 我正在使用dev c ++,但收到错误(C++98'array'必须由构造函数初始化)
- dev Wx Dev C++ vs Graphics.h?
- dev如何在C++中比较二进制数
- 在linux中为c++dev配置VSCode
- DEV C++ 第 69 行 [错误] ISO "for" 范围更改了"i"的名称查找 [-允许]
- dev在试图从dev c++mingw 4.8.1中的文件读取时接收分段错误
- 我有一个C++函数,它在Dev C++中编译,但在G++中不编译
- 写入/dev/ttyS0后读取0字节
- 如何将 stderr 重定向到 /dev/null
- 如何创建C++DLL(使用DEV -C++)并在MT4脚本中使用(逐步)
- auto 关键字在 Dev c++ 中不起作用
- 从 win 7 升级到 Win 10 后,出现 Dev-C++ makefile.win 编译错误
- 如何检测 ofstream 是否正在写入 /dev/null
- 如何将 libproxy-dev 链接到现有的 cmake 项目(C++)?
- 在哪里调用主函数(dev c ++)
- mmap with /dev/input/event*