windowsのvscodeで、C言語でMySQLを使ってデータベースを操作するプログラムを作っています。
定期的にコンパイルしながら作成していたのですが、mysql_init()とmysql_real_connect()を使用したところ[undifined reference]とエラーが出てコンパイルすることができませんでした。
MySQLの設定やデータベースの作成を行い、cやMySQLのライブラリもインストールしました。
includeファイルのmysql.hの入っているフォルダもカレントディレクトリに置いてあります。
ヘッダファイルの中を探してみたところ、mysql_init()は定義がなかったのですが、mysql_real_connectについては定義があるにも関わらず[undifined reference]でした。
原因が全然わかりません。どなたか助けてください。
ソースコードは以下になります。********
#include <stdio.h>
#include <stdlib.h>
#include "MySQL Connector.C 6.1\include\mysql.h"
void main()
{
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
const char *SERV = "localhost"; /* ローカルホストに接続 */ const char *USER = "root"; /* このユーザで入る */ const char *PASSWORD = "root"; /* パスワードはこれ */ const char *DB_NAME = "db_member_attendance"; /* 接続したいDB */ const unsigned int PORT = 3306; /* だいたい3306 */ conn = mysql_init(NULL); conn = (MYSQL*)malloc(sizeof(MYSQL)); memset(conn,0,sizeof(MYSQL)); mysql_real_connect(conn,SERV,USER,PASSWORD,DB_NAME,PORT,NULL,0);
}
ソースコードここまで**
エラーメッセージは以下になります。
C:\Users\Y-HATA~1\AppData\Local\Temp\ccOlgUtf.o:DBmanager.c:(.text+0x41): undefined reference to mysql_init@4' C:\Users\Y-HATA~1\AppData\Local\Temp\ccOlgUtf.o:DBmanager.c:(.text+0xaf): undefined reference to
mysql_real_connect@32'
collect2.exe: error: ld returned 1 exit status
どうぞよろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/14 06:52
2019/05/14 08:08
2019/05/17 02:12
2019/05/17 03:06