mysql:3558
From: "zhaozhao" <"zhaozhao" <zhaozhao@xxxxxxxxxx>>
Date: Tue, 24 Apr 2001 19:43:43 +0900
Subject: [mysql 03558] Mysql & gcc
皆様: Mysqlの初心者です。どうぞよろしくお願いしたします。 実はRedHat Linux7.0でMysqlの勉強が始まったばかりです。gccでプログラムを 作ってみると、うまくいかなかったのです。以下は私のコードとMakefileですが、何 かの問題点がありましたら教えていただけないでしょうか? mysql1.c : #include <stdio.h> #include <stdlib.h> #include <math.h> #include "/usr/local/include/mysql/mysql.h" main(argc,argv) int argc; char **argv; { MYSQL sql_server; MYSQL *d_mysql; /* MYSQL *d_mysql=NULL; */ MYSQL_RES *result; MYSQL_ROW sql_row; MYSQL_FIELD *field; char query[2048], m_name[64]; puts("I am here 1234"); fprintf(stderr,"Test for Mysql interface\n"); d_mysql=mysql_connect(&sql_server, NULL, "root", "password"); if (!d_mysql) { /* return; */ exit(1); } else{ fprintf(stderr,"Success in database connecting!\n"); } puts("I am here 1"); if (mysql_select_db(d_mysql, "aru_db")) { /* return; */ exit(1); } puts("I am here 2"); /* Query */ snprintf(query, 2048, "select a,b,c from table1 where a='x'"); mysql_query(d_mysql, query); result = mysql_store_result(d_mysql); if (!result ) { free(query); mysql_free_result(result); return(NULL); } sql_row = mysql_fetch_row(result); sprintf(m_name,"%s", sql_row[0]); } Makefile: FFLAGS = -g CFLAGS = -g GCCLIBA = /usr/lib/gcc-lib/i386-redhat-linux/2.96/libgcc.a MYSQLINC = /usr/local/mysql/include MYSQLLIB = /usr/local/mysql/lib BIN = /home/usera/bin all :mysql1 mysql1 :mysql1.o $(CC) -shared $(CFLAGS) mysql1.o -L$(MYSQLLIB) -lmysqlclient -lm \ -o $(BIN)/mysql1 .c.o: $(CC) $(CFLAGS) -c $*.c .f.o: $(FC) $(FFLAGS) -c $*.f 問題がないようにmakeコマンドでコンパイルしましたが、実行するときには、いつも 以下のエーラがでるわけですが、 Segmentation fault (core dumped) 私の注目したところと言えば、まず puts("I am here 1234") も実行されていな かったということです。結構不思議だと思いますが、何方かに教えて頂ければ大変助 かります。それでは、宜しくお願いいたします。 趙 昭
-> 3558 2001-04-24 19:43 ["zhaozhao" <zhaozhao] Mysql & gcc 3559 2001-04-25 09:10 ┣[<endo_t@xxxxxxxxxx> ] 3561 2001-04-25 09:37 ┃┗[<endo_t@xxxxxxxxxx> ] 3562 2001-04-25 09:50 ┣[<endo_t@xxxxxxxxxx> ] 3563 2001-04-25 23:07 ┗[とみたまさひろ <tomm]