Bonjour, après plusieurs heures de recherches j'ai toujours des erreurs lors de la compilation de mon programme.

Je m'explique : j'ai un fichier main.c avec lequel je tente seulement d'ouvrir et de fermer une base de donnée sqlite et je n'arrive pas à me débarrasser de certaines erreurs.

-Mon main.c :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
#include <stdlib.h>
#include "sqlite3.h"
#include "sqlite3.c"
 
int main(int argc, char *argv[])
{
 	 sqlite3* bdd;
 	 sqlite3_open("bdd.db", &bdd);
	 sqlite3_close(bdd);
	 return 0;
}
-La commande que j'utilise pour compiler (mon "vrai" programme est lié à un fichier .glade pour l'interface gtk+, d'ou cette commande) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$ gcc `pkg-config --cflags gtk+-3.0` -o "testbdd" main.c `pkg-config --libs gtk+-3.0`
-Les erreurs que cette commande me renvoie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
In file included from main.c:3:0:
sqlite3.c:23515:42: error: ‘mremap’ undeclared here (not in a function)
sqlite3.c: In function ‘unixRemapfile’:
sqlite3.c:27728:42: error: ‘MREMAP_MAYMOVE’ undeclared (first use in this function)
sqlite3.c:27728:42: note: each undeclared identifier is reported only once for each function it appears in
sqlite3.c:27728:5: warning: passing argument 4 of(void * (*)(void *, size_t,  size_t,  int))aSyscall[23].pCurrent’ makes integer from pointer without a cast [enabled by default]
sqlite3.c:27728:5: note: expected ‘int’ but argument is of type ‘struct unix_syscall *’
Merci d'avance pour votre aide.