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

  1. #1
    Membre actif
    [DEBUTANT] Probleme compilation DevIL en statique avec MinGW
    Bonjour à tous.

    Voila, je souhaiterais utiliser quelques fonctions de DevIL. Je programme sous code::block avec MinGW. Il s'agit de ma premiere création de librairie statique...(d'où les problemes).

    J'ai décidé d'utiliser la version statique de DevIL. J'ai donc télécharger les sources et tenter de compiler la partie pour IL. Aucun probleme, j'obtiens biens mon libDEVIL.a et plein de il_xxx.o.

    Ensuite quand je compile mon prog (qui utilise devIL), la compilation se passe bien mais pas les links... Ereurs du style :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    ..\Outils\DevIL\devIL static\Release\libDevIL.a(il_io.o):il_io.c:(.text+0x4e7): undefined reference to `ilIsValidHdrF'


    Bon, j'ai pas décris tout ce que j'ai fait, car il doit y avoir plus d'erreurs que de trucs justes. Si quelqu'un connais un lien expliquant simplement ce qu'il faut faire, ou s'il y a une ame charitable...

  2. #2
    Rédacteur

    Tu as défini la macro IL_STATIC_LIB au niveau du projet qui utilise DevIL ?

  3. #3
    Membre actif
    Tu as défini la macro IL_STATIC_LIB au niveau du projet qui utilise DevIL ?
    Oui.

    En fait mon projet est une adaptation (bien que pour l'instant c'est plus un copier-coller) de Yes::Engine. Au niveau des options du compilo, j'ai à peu près les mêmes que ceux donner avec ton tutorial numéro 8. Une différence (de taille) est que je ne lie pas avec "png" jpeg" "tiff" "zlib" ..., car je ne les ai pas...

    Au début, j'ai tenté avec les *.a et *.lib données dans ton zip sur les bibliotheques externes. J'obtenais le même type d'erreur (mais pas sur ce fichier)...

    Mais je tiens à dire que je n'y connais absolument pas grand chose sur les compilos, les editeur de liens et tout ce tralala. Mon erreur viens peut etre de mon libDevIL.a.

    PS: juste petite parenthese pour Loulou24, j'ai du rajouter un #include <boost/numeric/interval/arith2.hpp> dans Vector2.h et ces congénères afin d'éviter 2 erreurs de compilation ("sqrt is not a member of std" et "ambiguous call of overload abs(float&)" ou quelque chose du genre lié à la fonction Normalize. Je ne suis pas très précis, car je ne m'en souviens plus très bien... Sinon, très très bon tutoriel. Merci.

  4. #4
    Rédacteur

    Une différence (de taille) est que je ne lie pas avec "png" jpeg" "tiff" "zlib" ..., car je ne les ai pas...

    Au début, j'ai tenté avec les *.a et *.lib données dans ton zip sur les bibliotheques externes. J'obtenais le même type d'erreur (mais pas sur ce fichier)...
    C'est pourtant bien nécessaire pour éviter de nombreuses erreurs d'édition de liens.

    Mais je tiens à dire que je n'y connais absolument pas grand chose sur les compilos, les editeur de liens et tout ce tralala. Mon erreur viens peut etre de mon libDevIL.a
    S'il a été créé c'est qu'il est a priori bon. Tu as vérifié ou essayé la version que je donne avec mes tutoriels ?

    PS: juste petite parenthese pour Loulou24, j'ai du rajouter un #include <boost/numeric/interval/arith2.hpp> dans Vector2.h et ces congénères afin d'éviter 2 erreurs de compilation ("sqrt is not a member of std" et "ambiguous call of overload abs(float&)" ou quelque chose du genre lié à la fonction Normalize. Je ne suis pas très précis, car je ne m'en souviens plus très bien... Sinon, très très bon tutoriel. Merci
    En effet. Bizarre, je pensais pourtant les avoir corrigé depuis longtemps, d'autant plus que je n'ai pas ces erreurs chez moi

  5. #5
    Membre actif
    Citation:
    Une différence (de taille) est que je ne lie pas avec "png" jpeg" "tiff" "zlib" ..., car je ne les ai pas...

    Au début, j'ai tenté avec les *.a et *.lib données dans ton zip sur les bibliotheques externes. J'obtenais le même type d'erreur (mais pas sur ce fichier)...

    C'est pourtant bien nécessaire pour éviter de nombreuses erreurs d'édition de liens.
    Je viens de trouver ces librairies sur le site de devIL (et oui il suffit de regarder en bas de la page )... je reessaye tout ça...

  6. #6
    Membre actif
    Bon ben en fait, c'etait une erreur stupide (comme toujours???) de ma part. Je ne liais pas les librairies dans le bon ordre (ah bon il y a un ordre??).

    Donc tout est OK. Les sources fournies dans le zip LibsExternes sont OK.

    Cette erreur n'aura pas été totalement inutile pour moi, puisque j'ai au passage compilé moi-même toutes ces bibliotheques (et ça marche!!).

    Donc voilà. Erreur stupide de ma part.
    Merci à ceux qui ont cherché!

  7. #7
    Rédacteur

    Pense au bouton

  8. #8
    Membre actif
    Oui!! Encore une fois tout en bas de la page...

###raw>template_hook.ano_emploi###