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

C Discussion :

développement C et imlib2


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 129
    Par défaut développement C et imlib2
    Bonjour à tous

    je suis un développeur débutant en C utilisant Code Block, mais j'aimerai développer sans aide dans un éditeur de texte et compiler à la main etc...
    J'utilise Imlib2 la lib d'enlightenment celle ci est installée donc mon répertoire home (donc pas dans les libs système) j'aimerai savoir comment dire à gcc ou ce trouve ces librairies je pense que mon message d'erreur est du à ça.

    Merci

    source : ---------------------------------------------------------

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #include <stdio.h>
    #include </home/kimlaw/enlightenment/repositories/e17/libs/imlib2/src/lib/Imlib2.h>
    #include <X11/Xlib.h>
    #include <string.h>
     
    int main (int argc, char **argv){
                    Imlib_Image image;
                    image = imlib_load_image(argv[1]);
     
            if(image){
                    char *tmp;
                    imlib_context_set_image(image);
                    tmp = strrchr(argv[2],'.');
     
                            if (tmp){
                            imlib_set_image_format(tmp + 1);
                            imlib_save_image(argv[2]);
                            }
            }
    }

    erreurs -------------------------------------


    kimlaw@kimlaw-laptop:~/workspace/manual_c$ gcc fichier.c > erreur.txt
    /tmp/ccY3pOc0.o: dans la fonction « main »:
    fichier.csad.text+0x23): référence indéfinie vers « imlib_load_image »
    fichier.csad.text+0x37): référence indéfinie vers « imlib_context_set_image »
    fichier.csad.text+0x67): référence indéfinie vers « imlib_set_image_format »
    fichier.csad.text+0x7a): référence indéfinie vers « imlib_save_image »
    collect2: ld returned 1 exit status

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Tu te trompes de forum.

    Ici tu es sur le forum C# et pas C, c'est totalement différent

    Je ne me souviens plus très bien du C pour pour inclure des libraire externe ne faut il pas faire plutot celma :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include "/home/kimlaw/enlightenment/repositories/e17/libs/imlib2/src/lib/Imlib2.h"
    Je crois me souvenir que "" est utilisé pour les librairies perso, et <> pour les librairies standard.

    Edit : Je viens de constater que ton sujet a été déplacé, donc c bon maintenant tu es dans le bon forum.

  3. #3
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    Citation Envoyé par kimlaw95 Voir le message
    J'utilise Imlib2 la lib d'enlightenment celle ci est installée donc mon répertoire home (donc pas dans les libs système) j'aimerai savoir comment dire à gcc ou ce trouve ces librairies je pense que mon message d'erreur est du à ça.
    Oui. Le fichier d'entete ne suffit pas, il ne decrit que l'interface de la bibliotheque et n'est utile que pour la compilation. Pour l'edition de lien, il faut egalement preciser ou se trouve la bibliotheque elle-meme.

    D'abord:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #include </home/kimlaw/enlightenment/repositories/e17/libs/imlib2/src/lib/Imlib2.h>
    C'est maladroit, puisque le fichier source depend maintenant de la machine sur laquelle tu travailles. Remplace ca par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #include <lmlib2.h>
    Le chemin vers ce fichier va etre precise lors de l'invocation de gcc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gcc -I/home/kimlaw/enlightenment/repositories/e17/libs/imlib2/src/lib fichier.c -o fichier.exe -llmlib2 -L<path_to_liblib2>
    -I (i majuscule) liste le(s) repertoire(s) gcc va chercher les fichiers d'entete qui ne sont pas dans la liste des repertoires standards.
    -l (ell minuscule) liste les bibliotheque a utiliser pour l'edition de lien. -ltoto lie avec libtoto.so ou libtoto.a
    -L liste le(s) repertoire(s) ou l'editeur de lien va chercher les bibliotheques qui ne sont pas dans la liste des repertoires standards.
    Pour plus de details, comme d'habitude, lire la doc.

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 129
    Par défaut
    merci bcp je vais me débrouiller avec ca

Discussions similaires

  1. Comment Développer en équipe ?
    Par christ_mallet dans le forum Débats sur le développement - Le Best Of
    Réponses: 45
    Dernier message: 19/11/2007, 00h15
  2. Quel outil choisir pour un développement SQL-Server ?
    Par Mouse dans le forum Débats sur le développement - Le Best Of
    Réponses: 23
    Dernier message: 12/08/2003, 06h23
  3. Quel outil pour du développement Client/Serveur (Win XP) ?
    Par jey_bonnet dans le forum Débats sur le développement - Le Best Of
    Réponses: 5
    Dernier message: 02/11/2002, 14h57
  4. [Kylix] Kylix et le développement web...
    Par nahmsath dans le forum EDI
    Réponses: 4
    Dernier message: 24/10/2002, 19h27
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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