database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 2107 게시물 읽기
No. 2107
Re: mysql과 C언어 연동~~~(왜 C언어로는 잘안하죠?)
작성자
서지훈
작성일
2000-06-15 17:20
조회수
3,543

안녕하세요...

 

컴파일 할 대 주는 -I -L은 include와 library의 위치를 잡아주는 옵션 입니다.

 

예를 들어 만약 mysql.h의 full path가

'/usr/local/mysql/include/mysql/mysql.h'과 같다면은

'-I/usr/local/mysql/include/mysql'옵션을 주면은 main program에서 include시에 full path없이 #include "mysql.h" 만으로도 include가 가능합니다.

물론 라이브러리도 같은 원리 입니다.

 

그러니깐 컴파일시에는 아래와 같은 옵션을 주면은 컴팡리이 됩니다.

 

$ gcc test.c -o test -lnsl -I/usr/local/mysql/include/mysql

-L/usr/local/mysql/lib/mysql -lmysqlclient

 

하시면은 컴팡리이 됩니다.

 

근데 linux machine에서는 -lsocket이 되는 것이 있고 않되는 것이 있는데 이건 상관이 없는 듯합니다. 그러나 unix machine에서는 아마도 이걸 붙혀 줘야 할 겁니다.

 

 

> 안냐세요~~저는 데이터베이스를 공부할려는 초보입니다!

> 제가 이전에 C언어와 CGI를 배웠기 때문에 C언어로 mysql과 연동하여

> 방명록과 게시판을 만들려구하는데...c파일이 컴파일이 잘안돼는군요!

> 컴파일을 이렇게 했는데...

>

> gcc -L/usr/local/mysql/lib -I/usr/local/mysql/include -o test test.c -lmysql

> -lnsl -lsocket 엔터

>

> 이렇게 하니 아래 글이 뜨고 컴파일이 안되더라구요!

>

> /usr/bin/ld: cannot find -lmysql

> collect2: ld returned 1 exit status

>

> 혹시 파일내용이 궁금하실까봐 올립니다!

> 할수있으시면 컴파일 옵션을 상세히 좀 갈켜주시겠읍니까?

> ********(-L은뭐고 그뒤에 경로들은 무엇인지 궁금합니다~~)

>

> 이파일은 그냥 테이블내용을 출력하는 연습용 파일입니다!

>

> -test.c-

> #include<sys/time.h>

>

> #include<stdio.h>

>

> #include</usr/include/mysql/mysql.h>

>

>

>

> int main(char **args){

>

> MYSQL_RES *result;

>

> MYSQL_ROW row;

>

> MYSQL *connection,mysql;

>

> int state;

>

> mysql_init(&mysql);

>

> connection=mysql_real_connect(&mysql,"","","","test",0,"",0);

>

> if(connection==NULL){

>

> printf(mysql_error(&mysql));

>

> return 1;

>

> }

>

> state=mysql_query(connection,"SELECT name,title FROM member");

>

> if(state!=0){

>

> printf(mysql_error(connection));

>

> return 1;

>

> }

>

> result=mysql_store_result(connection);

>

> printf("rows : %d

",mysql_num_rows(result));

>

> while((row=mysql_fetch_row(result))!=NULL){

>

> printf("name: %s, title: %s

", (row[0] ? row[0] : "NULL"),(row[1] ? row[1] : "NULL"));

>

> }

>

> mysql_free_result(result);

>

> mysql_close(connection);

>

> printf("Done.

");

>

> }

>

[Top]
No.
제목
작성자
작성일
조회
2110php3를 mssql과 연동을 하고 싶습니다. 며칠째 해메고 있습니다.
궁금남
2000-06-15
3078
2111┕># Re: php3를 mssql과 연동을 하고 싶습니다. 며칠째 해메고 있습니다.
송두호
2000-06-15 20:55:23
3110
2112┕># Re: php3를 mssql과 연동을 하고 싶습니다. 며칠째 해메고 있습니다.
송두호
2000-06-15 20:55:27
5207
2114 ┕>Re: # Re: php3를 mssql과 연동을 하고 싶습니다. 며칠째 해메고 있습니다.
정재익
2000-06-16 08:35:11
3300
2109# 두번째 소스 질문요!!1
황종현
2000-06-15
3192
2108# 갈켜주세요!!1 부탁입니다
황종현
2000-06-15
3095
2124┕># Re: # 갈켜주세요!!1 부탁입니다 -&gt; 뭘 알려달라는거?
문태준
2000-06-16 13:40:32
3032
2106mysql과 C언어 연동~~~(왜 C언어로는 잘안하죠?)
답답이
2000-06-15
3085
2107┕>Re: mysql과 C언어 연동~~~(왜 C언어로는 잘안하죠?)
서지훈
2000-06-15 17:20:47
3543
2105[질문] 컴파일 후 실행시 에러...
서지훈
2000-06-15
2742
2102한글정렬....
꺼벙이
2000-06-15
2810
2103┕>Re: 한글정렬....
정재익
2000-06-15 14:57:23
3340
2101# query 실행중에 jserv가 죽으면...
boky
2000-06-15
2623
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다