C MySQL Segfault

teisho

Well-Known Member
EDIT: Hab's. Die Funktion darf wahrscheinlich nicht connect heißen.
Hab sie umbenannt, jetzt geht wieder alles. :)

Versuche mich gerade ein wenig mit FreeBSD, C und MySQL (MariaDB) und bin schon am Anfang hängen geblieben.

Vielleicht hat hier jemand eine Idee:
Wenn ich folgenden Code ausführe, schmiert das Programm immer mit einem Seg fault ab.

Code:
#include <stdlib.h>
#include <stdio.h>
#include <mysql.h>

void exit_with_error (MYSQL *con)
{  
   fprintf(stderr, "%s\n", mysql_error(con));  
   mysql_close(con);  
   exit(1);
}

void connect(MYSQL *con)
{  
  if (mysql_real_connect(con, "localhost", "db_user", "db_password", "db_name", 0, NULL, 0) == NULL)
   {  
    exit_with_error(con);  
   }  
  
  if (con == NULL)
   {  
    exit_with_error(con);  
   }  
}

int main(int argc, char **argv)
{
  
   MYSQL *con = mysql_init(NULL);
  
   connect(con);  
  
   mysql_close(con);
   exit(0);
}

Compiliert wird mit:
Code:
clang mail.c -o mail  `mysql_config --cflags --libs`

Komischerweise lief das Programm als ich das letzte mal am Sonntag dran saß noch.
Auf MacOS läuft es jetzt noch.
 
Zuletzt bearbeitet:
Zurück
Oben