discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Howto write GNUmakefile.preamble with using C API


From: Marko Riedel
Subject: Re: Howto write GNUmakefile.preamble with using C API
Date: Mon, 21 Jul 2008 19:31:42 +0000 (GMT)

Well, you could be lazy and let ProjectCenter write the makefiles for you. A 
closer look at what it produces reveals the following two items:

# Additional flags to pass to the linker
ADDITIONAL_LDFLAGS +=  -lmysqlclient 

# Additional library directories the linker should search
ADDITIONAL_LIB_DIRS += -L/usr/lib 

Best regards,

Marko

+-------------------------------------------------------------+
| Marko Riedel, EDV Neue Arbeit gGmbH, markoriedelde@yahoo.de |
| http://www.geocities.com/markoriedelde/index.html           |
+-------------------------------------------------------------+


--- Jaroslav Joska <jaroslav.joska@email.cz> schrieb am Mo, 21.7.2008:

> Von: Jaroslav Joska <jaroslav.joska@email.cz>
> Betreff: Howto write GNUmakefile.preamble with using C API
> An: "GNUstep" <discuss-gnustep@gnu.org>
> Datum: Montag, 21. Juli 2008, 21:10
> Hi all!
> 
> When I waited for reply to my question about installing
> SQLClient,
> I tried C program API to connect with MySQL. Tjis is C file
> test.c:
> 
> *#include* <mysql.h>
> *#include* <stdio.h>
> 
> *main*() {
>    MYSQL *conn;
>    MYSQL_RES *res;
>    MYSQL_ROW row;
> 
>    char *server = "localhost";
>    char *user = "root";
>    char *password = "PASSWORD"; //* set me first
> *//
>    char *database = "mysql";
> 
>    conn = *mysql_init*(NULL);
> 
>    //* Connect to database *//
>    *if* (!*mysql_real_connect*(conn, server,
>          user, password, database, 0, NULL, 0)) {
>       *fprintf*(stderr, "%s\n",
> *mysql_error*(conn));
>       *exit*(1);
>    }
> 
>    //* send SQL query *//
>    *if* (*mysql_query*(conn, "show tables")) {
>       *fprintf*(stderr, "%s\n",
> *mysql_error*(conn));
>       *exit*(1);
>    }
> 
>    res = *mysql_use_result*(conn);
> 
>    //* output table name *//
>    *printf*("MySQL Tables in mysql
> database:\n");
>    *while* ((row = *mysql_fetch_row*(res)) != NULL)
>       *printf*("%s \n", row[0]);
> 
>    //* close connection *//
>    *mysql_free_result*(res);
>    *mysql_close*(conn);
> }
> 
> I successfully complied with this command:
> # |*gcc -o test $(mysql_config --cflags) test.c
> *||*$(mysql_config --libs)*|
> #./test
> and it's fully working.
> 
> 
> And this is my question. Can I compile this file (first
> rename to 
> test.m) with GNUstep make?
> I changed GNUstep.preamble many times. I compiled test.m
> file without 
> error massage, but
> for everytime I got "Segmentation fault :11"
> without core file.
> 
> Does anybody knows which variables in my
> GNUmakefile.preamble have I to 
> change?
> ADDITIONAL_CPPFLAGS +=
> ADDITIONAL_OBJCFLAGS +=
> ADDITIONAL_TOOL_LIBS += -L/usr/local/lib/mysql
> -lmysqlclient -lz -lcrypt -lm
> ADDITIONAL_CFLAGS += -I/usr/local/include/mysql 
> -fno-strict-aliasing -pipe
> ADDITIONAL_INCLUDE_DIRS +=  -I/usr/local/include/mysql
> ADDITIONAL_LDFLAGS +=
> ADDITIONAL_LIB_DIRS += -L/usr/local/lib/mysql
> ADDITIONAL_INSTALL_DIRS +=
> 
> This is my MySQL configuration.
> # mysql_config
> Usage: /usr/local/bin/mysql_config [OPTIONS]
> Options:
>         --cflags         [-I/usr/local/include/mysql  
> -fno-strict-aliasing -pipe]
>         --include        [-I/usr/local/include/mysql]
>         --libs           [-L/usr/local/lib/mysql
> -lmysqlclient -lz 
> -lcrypt -lm]
>         --libs_r         [-L/usr/local/lib/mysql
> -lmysqlclient_r -lz 
> -pthread -lcrypt -lm  -pthread]
>         --socket         [/tmp/mysql.sock]
>         --port           [0]
>         --version        [5.1.23-rc]
>         --libmysqld-libs [-L/usr/local/lib/mysql -lmysqld
> -lz -pthread 
> -lcrypt -lm  -pthread   -lwrap]
> 
> 
> 
> _______________________________________________
> Discuss-gnustep mailing list
> Discuss-gnustep@gnu.org
> http://lists.gnu.org/mailman/listinfo/discuss-gnustep


      __________________________________________________________
Gesendet von Yahoo! Mail.
Dem pfiffigeren Posteingang.
http://de.overview.mail.yahoo.com




reply via email to

[Prev in Thread] Current Thread [Next in Thread]