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

SDL Discussion :

Création DLL de SDL_Gfx


Sujet :

SDL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 69
    Points : 41
    Points
    41
    Par défaut Création DLL de SDL_Gfx
    Ca fait quelques temps que je galère également avec SDL_Glx qui n'a pas de version .dll fournie (à la différence de SDL mixer, net, image etc)
    et je n'arrive vraiment pas à capter comment cross compiler depuis linux (où j'arrive à sortir une version ubuntu/debian qui ne marche pas sous fedora soit dit en passant :s) vers une plateforme win32.

    Existerait-il un pro de SDL ET de la cross-compilation dans la salle ?
    Lève toi et fait voir ce que tu sais faire

    Merci d'avance

  2. #2
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Pourtant lorsque je télécharge l'archive et que je regarde le fichier INSTALL, je vois ceci :

    Windows (xmingw32):

    ./autogen.sh
    cross-configure
    cross-make
    cross-make install
    make distclean


    Check the "Other Builds" Directory
    ----------------------------------

    Windows (VisualC):

    unzip -a VisualC.zip
    vcvars32.bat
    copy VisualC/makefile
    nmake
    As-tu tenté l'une ou l'autre solution ?
    Jc

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 69
    Points : 41
    Points
    41
    Par défaut
    Bon en fait, je voulais répondre à un post et j'ai crée un nouveau fil bref j'ai fais mon boulet... le sujet initial était: http://www.developpez.net/forums/sho...d.php?t=398947

    Euh sinon je crois que xmingw32 est un cross-compiler mais ce n'est pas du tout explicite pour moi...
    Je comprend bien que ce sont des lignes de code à taper dans un terminal sous linux mais il faut installer quelque chose avant (comme xmingw32 par ex non ?)

    Bref si tu as compris ce que ces lignes voulaient dire je te serais reconnaissant de m'éclairer ^^

    Merci d'avance.

  4. #4
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Citation Envoyé par LeFlou Voir le message
    Bon en fait, je voulais répondre à un post et j'ai crée un nouveau fil bref j'ai fais mon boulet... le sujet initial était: http://www.developpez.net/forums/sho...d.php?t=398947

    Euh sinon je crois que xmingw32 est un cross-compiler mais ce n'est pas du tout explicite pour moi...
    Je comprend bien que ce sont des lignes de code à taper dans un terminal sous linux mais il faut installer quelque chose avant (comme xmingw32 par ex non ?)

    Bref si tu as compris ce que ces lignes voulaient dire je te serais reconnaissant de m'éclairer ^^

    Merci d'avance.
    Ben effectivement, soit tu utilises VisualC (je sais qu'une version Express existe gratuite) ou xmingw32. Il faudra installer l'un ou l'autre et après suivre les informations dépendant du choix fait.

    Jc

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 69
    Points : 41
    Points
    41
    Par défaut
    J'utilise Codeblocks et je ne sais pas utiliser un cross-compiler, je trouve très peu de documentation sur le sujet avec de la pratique... pas le concept que j'ai saisi.

    Où trouve t'on xmingw32 ? comment l'installe t'on ? (je suis sous Ubuntu)
    Aurais-tu un exemple de cross-compilation d'un projet SDL utilisant les différents modules SDL glx image mixer net etc ?

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 37
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par LeFlou Voir le message
    Où trouve t'on xmingw32 ? comment l'installe t'on ? (je suis sous Ubuntu)
    Installe tout simplement le paquet 'mingw32' avec Synaptic. Par contre je peux pas t'aider pour l'utiliser sous code::blocks, mais si tu suis les instructions données plus haut par Fearyourself, ça devrait marcher.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 69
    Points : 41
    Points
    41
    Par défaut
    Bon jvais essayer ça alors, ça a l'air bien pratique sur la durée la compilation croisée...

    Edit: J'ai installé via Synaptic xmingw32. (3 paquets)
    J'ai dézippé depuis other builds le zip nommé "mingw"
    mais les infos contenues dans le readme sont pas claires jtrouve:

    This makefile allows SDL_gfx to be compiled with mingw in cygwin.

    Of note in this makefile:
    - You will have to change the path on line 5 to match where you want the library installed.
    - You will have to change the CFLAGS to match your system.
    Pour le premier tiret, que faut-il écrire pour créer la dll sur son desktop par ex ?
    Pour les second tiret, que faut-il remplir ? J'ai un processeur AMD dual core il faut retrouver son nom précis ?

    De plus, j'ai essayé le paragraphe
    To create a Windows DLL using the xmingw32 cross-compiler:
    cross-configure
    cross-make
    cross-make install
    Cependant,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    leflou@leflou-desktop:~/Téléchargements/SDL_gfx-2.0.16$ cross-configure
    bash: cross-configure : commande introuvable

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 37
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par LeFlou Voir le message
    Edit: J'ai installé via Synaptic xmingw32. (3 paquets)
    J'ai dézippé depuis other builds le zip nommé "mingw"
    Attention, ce zip n'est à utiliser que pour compiler sous Windows, pas sous Linux. Mingw32 peut s'utiliser aussi bien en natif (= sous windows) ou en compilation croisée, ce qui génère un peu de confusion...


    Cependant,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    leflou@leflou-desktop:~/Téléchargements/SDL_gfx-2.0.16$ cross-configure
    bash: cross-configure : commande introuvable
    Tu peux télécharger ces deux scripts sur le site de la SDL: cross-configure.sh et cross-make.sh.

    Le seul truc un peu délicat c'est qu'il faut les éditer pour qu'ils sachent où tu a installé la bibliothèque SDL (version mingw32). Le plus simple c'est d'installer celle-ci dans "/usr/local/cross-tools/i586-mingw32msvc'. Puis d'éditer les deux scripts ci-dessus pour changer leur ligne TARGET:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TARGET=i586-mingw32msvc
    Ensuite tu peux les placer dans '/usr/local/bin', ou bien juste les recopier dans le répertoire de SDL_gfx.

    PS: pour installer la version mingw32 de SDL au bon endroit, il suffit de changer une ligne au début de son Makefile, puis faire 'make cross':

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CROSS_PATH := /usr/local/cross-tools/i586-mingw32msvc

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 69
    Points : 41
    Points
    41
    Par défaut
    J'ai installé Mingw32 via la commande:
    sudo apt-get install mingw32
    J'ai modifié les chemins des scripts:
    PREFIX=/usr/i586-mingw32msvc
    TARGET=i586-mingw32msvc
    Mais lorsque je lance "sh cross-configure.sh":

    leflou@leflou-desktop:~/Téléchargements/SDL_gfx-2.0.16$ sh cross-configure.sh
    configure: creating cache cross-config.cache
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for gawk... no
    checking for mawk... mawk
    checking whether make sets $(MAKE)... yes
    checking for i586-mingw32msvc-strip... i586-mingw32msvc-strip
    checking build system type... i386-pc-linux
    checking host system type... i586-pc-mingw32msvc
    checking target system type... i586-pc-mingw32msvc
    checking for i586-mingw32msvc-ranlib... i586-mingw32msvc-ranlib
    checking for style of include used by make... GNU
    checking for i586-mingw32msvc-gcc... i586-mingw32msvc-gcc
    checking for C compiler default output file name... a.exe
    checking whether the C compiler works... yes
    checking whether we are cross compiling... yes
    checking for suffix of executables... .exe
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether i586-mingw32msvc-gcc accepts -g... yes
    checking for i586-mingw32msvc-gcc option to accept ANSI C... none needed
    checking dependency style of i586-mingw32msvc-gcc... gcc3
    checking for ld used by GCC... /usr/i586-mingw32msvc/bin/ld
    checking if the linker (/usr/i586-mingw32msvc/bin/ld) is GNU ld... yes
    checking for BSD-compatible nm... /usr/i586-mingw32msvc/bin/nm -B
    checking whether ln -s works... yes
    updating cache cross-config.cache
    loading cache cross-config.cache within ltconfig
    .: 378: cross-config.cache: not found
    configure: error: libtool configure failed
    leflou@leflou-desktop:~/Téléchargements/SDL_gfx-2.0.16$
    Impossible de continuer via le script cross-make.
    Je dois ajouter des chemins de bibliothèques dans le script ?

    Re-Edit: Problème à moitié résolu, solution pour compiler SDL_gfx avec Codeblocks sous windows

Discussions similaires

  1. [Kylix] Création de DLL pour se connecter
    Par aroundzefur dans le forum EDI
    Réponses: 1
    Dernier message: 16/03/2006, 09h58
  2. [VB6] création dll win32 et appel par un autre programme
    Par Tankian85 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 10/03/2006, 08h21
  3. Deux méthodes de création Dll
    Par Hokagge dans le forum MFC
    Réponses: 6
    Dernier message: 12/01/2006, 11h04
  4. Création DLL pour utilisation sur VBA
    Par Fbartolo dans le forum C++Builder
    Réponses: 1
    Dernier message: 21/11/2005, 20h44
  5. Création dll
    Par Vodkha dans le forum Langage
    Réponses: 6
    Dernier message: 14/10/2005, 09h15

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