IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Code::Blocks Discussion :

[DLL + DEF] Utilisation de la librairie SQLite


Sujet :

Code::Blocks

  1. #1
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut [DLL + DEF] Utilisation de la librairie SQLite
    Bonjour

    Je chercher à utiliser SQLite dans un programme en C, et je galère depuis un bout de temps pour l'édition des liens avec cette librairie. Dans le dossier de mon projet, il y a mon main.c qui contient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    #include <stdlib.h>
    #include <stdio.h>
    #include "sqlite3.h"
     
    int main(void)
    {
        int foo = -1;
        sqlite3 *pt_database = NULL;
        foo = sqlite3_open("collection", &pt_database);
        system("pause");
        return 0;
    }
    et les 3 fichiers en rapport avec la librairie SQLite (sqlite3.h, sqlite3.def, sqlite3.dll). Quand je compile + linke, j'ai le message d'erreur suivant :

    obj\Debug\main.o||In function `main'
    C:\Projets\SQLite\Interface_SQLite\main.c|13|undefined reference to `sqlite3_open'|
    ||=== Build finished: 1 errors, 0 warnings ===|

    Je me bats donc avec les "builds options", j'ai fouillé sur le net et sur Dvpez, mais rien pour expliquer comment utiliser une DLL dans CodeBlocks (uniquement pour les créer...).
    • Dans les builds options, onglets "search directory", j'ai rajouté le dossier courant pour le compileur et le linkeur. Rien n'y fait.
    • Dans l'onglet "linker settings", on peut ajouter des librairies, mais rajouter mes fichiers DEF et / ou DLL n'y change rien. D'ailleurs, par défaut, ne cherche pas les fichiers def et dll.


    ALors ben là... Je suis sec....
    Si quelqu'un a un tuyau je suis bien sur preneur !!
    Merci d'avance.



    PS : les fichiers de la bibliotheque SQLite sont disponibles aux liens ci dessous.
    http://www.sqlite.org/sqlitedll-3_7_3.zip pour les fichiers DEF et DLL.
    http://www.sqlite.org/sqlite-3_7_3.zip pour le fichier header H.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    tu peux essayez d'utiliser directement les sources de Sqlite plutôt que la Dll.
    Il y a un paquage qui s'appelle "sqlite-amalgamation-3_7_2.zip" sur le site Sqlite ; tu copies les .h et .c dans le dossier de ton projet et normalement ça devrait compiler.

  3. #3
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Salut !
    J'ai effectivement trouvé cette solution Merci.

    Mais un cas plus général, comment utiliser plus spécifiquement le fichier DLL ?

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Pour utiliser la dll sqlite, il faut faire attention que celle-ci soit bien présente dans le répertoire ou est compilé ton exécutable. Un peu empiriquement j'avais réussi à la faire fonctionner comme cela (je débute en c++).

  5. #5
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Ok je tenterais à l'occasion. Mon objectif en fait est d'utiliser SQLite via Qt, mais j'avais fait un mini-projet en C pour voir. Merci pour les conseils

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/04/2012, 17h46
  2. Utilisation de la librairie Wininet.dll sous windows 7
    Par Cravis dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 17/11/2011, 11h58
  3. [dll] libérer une dll apres utilisation
    Par polo54 dans le forum API standards et tierces
    Réponses: 12
    Dernier message: 11/07/2009, 22h48
  4. Chargement d'une DLL et utilisation du multithread
    Par Maitre Kanter dans le forum Langage
    Réponses: 6
    Dernier message: 07/09/2004, 23h18
  5. [DLL] Utilisation d'une DLL pour utiliser serveur Firebird
    Par sekiryou dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/08/2004, 14h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo