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 :

SDL2 et Framebuffer : comment ?


Sujet :

SDL

  1. #1
    Membre actif
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2019
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2019
    Messages : 105
    Points : 241
    Points
    241
    Par défaut SDL2 et Framebuffer : comment ?
    Bonjour,

    J'ai créé une application pour créer des dashboard en utilisant le Frambuffer de Linux. Le problème est qu'elle utilise DirectFB qui est maintenant obsolete , non supporté et sur lequel je fais face a des bugs.
    Parmi le peu de solutions alternatives que j'ai trouvé sur le web, il semblerait que SDL puisse le faire ... et tant qu'a faire, autant utilisé la derniere version, la SDL2.
    Sauf que la non plus peu ou pas d'info

    Bref, j'ai tenté de compiler SDL2 sans support X, ce qui donne le configure suivant :

    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
    21
    /var/tmp/portage/media-libs/libsdl2-2.0.10/work/SDL2-2.0.10/configure --prefix=/usr --build=armv7a-hardfloat-linux-gnueabi --host=armv7a-hardfloat-linux-gnueabi --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --docdir=/usr/share/doc/libsdl2-2.0.10 --htmldir=/usr/share/doc/libsdl2-2.0.10/html --with-sysroot=/ --libdir=/usr/lib -
    -disable-static --enable-atomic
    –enable-audio --enable-video
    –enable-render --enable-events --disable-joystick
    –disable-haptic --enable-power --enable-filesystem
    –enable-threads --enable-timers --enable-file
    –enable-loadso --enable-cpuinfo --enable-assembly
    –disable-ssemath --disable-mmx --disable-3dnow
    –disable-sse --disable-sse2 --disable-altivec
    –disable-oss --disable-alsa --disable-alsa-shared
    –disable-esd --enable-pulseaudio
    –disable-pulseaudio-shared --disable-arts --disable-libsamplerate --disable-nas --disable-nas-shared --disable-sndio --disable-sndio-shared --enable-diskaudio --enable-dummyaudio --disable-video-wayland --disable-wayland-shared --disable-video-rpi --disable-video-x11 --disable-x11-shared --disable-video-x11-xcursor --disable-video-x11-xdbe --disable-video-x11-xinerama --disable-video-x11-xinput --disable-video-x11-xrandr --disable-video-x11-scrnsaver --disable-video-x11-xshape --disable-video-x11-vm
    –disable-video-cocoa --disable-video-directfb
    –disable-fusionsound --disable-fusionsound-shared
    –disable-video-kmsdrm --disable-kmsdrm-shared
    –enable-video-dummy --disable-video-opengl
    –disable-video-opengles1 --disable-video-opengles2
    –disable-video-vulkan --disable-libudev
    –enable-dbus --disable-ibus --disable-input-tslib
    –disable-directx --disable-rpath
    –disable-render-d3d --without-x
    Sauf que quand je le lance, ca me donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    # export SDL_VIDEODRIVER=fbcon
    # ./HelloWorld
    Could not init SDL: fbcon not available
    D'un vielle article sur leur forum, ca pourrait etre normal car ils auraient dropper le support de fbcon avec SDL2 au profit de kms.
    Ok ok

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /var/tmp/portage/media-libs/libsdl2-2.0.10/work/SDL2-2.0.10/configure --prefix=/usr --build=armv7a-hardfloat-linux-gnueabi --host=armv7a-hardfloat-linux-gnueabi --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --docdir=/usr/share/doc/libsdl2-2.0.10 --htmldir=/usr/share/doc/libsdl2-2.0.10/html --with-sysroot=/ --libdir=/usr/lib --disable-static --enable-atomic --enable-audio --enable-video --enable-render --enable-events --disable-joystick --disable-haptic --enable-power --enable-filesystem --enable-threads --enable-timers --enable-file --enable-loadso --enable-cpuinfo --enable-assembly --disable-ssemath --disable-mmx --disable-3dnow --disable-sse --disable-sse2 --disable-altivec --disable-oss --disable-alsa --disable-alsa-shared --disable-esd --enable-pulseaudio --disable-pulseaudio-shared --disable-arts --disable-libsamplerate --disable-nas --disable-nas-shared --disable-sndio --disable-sndio-shared --enable-diskaudio --enable-dummyaudio --disable-video-wayland --disable-wayland-shared --disable-video-rpi --disable-video-x11 --disable-x11-shared --disable-video-x11-xcursor --disable-video-x11-xdbe --disable-video-x11-xinerama --disable-video-x11-xinput --disable-video-x11-xrandr --disable-video-x11-scrnsaver --disable-video-x11-xshape --disable-video-x11-vm --disable-video-cocoa --disable-video-directfb --disable-fusionsound --disable-fusionsound-shared --enable-video-kmsdrm --disable-kmsdrm-shared --enable-video-dummy --disable-video-opengl --disable-video-opengles1 --disable-video-opengles2 --disable-video-vulkan --disable-libudev --enable-dbus --disable-ibus --disable-input-tslib --disable-directx --disable-rpath --disable-render-d3d --without-x
    mais ca ne marche pas mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    export SDL_VIDEODRIVER=kmsdrm
    # ./HelloWorld
    Could not init SDL: kmsdrm not available
    Quelqu'un aurait-il une idée pour le faire fonctionner.
    Ou autremement, une autre idée sans devoir installer X.

    Merci

    Laurent

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Quelles sont les drivers disponibles, du coup ? Pourquoi n'avez vous pas ksdrm ?
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre actif
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2019
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2019
    Messages : 105
    Points : 241
    Points
    241
    Par défaut
    Salut,

    Ben comment peux-t-on avoir la liste des drivers disponibles ? Je veux dire hormis lors du configure ?
    Pourquoi je n'ai pas kmsdrm ? Tel est bien la question

    Bye

    Laurent

  4. #4
    Membre actif
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2019
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2019
    Messages : 105
    Points : 241
    Points
    241
    Par défaut
    Bonjour,

    Le fond de mon probleme était que mon vieux kernel était buggé au niveau de KMS qui ne pouvait donc s'initialisé.

    Je suis maintenant avec le 5.4.28 et KMS fonctionne maintenant.
    Sauf que je n'arrive toujours pas a faire fonctionner SDL2.

    J'obtiens l'erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    # ./TestSDL 
    Testing video drivers...
    MESA-LOADER: failed to open sun4i-drm (search paths /usr/lib/dri)
    failed to load driver: sun4i-drm
    SDL_VIDEODRIVER available: KMSDRM dummy
    SDL_VIDEODRIVER usable   : KMSDRM
    MESA-LOADER: failed to open sun4i-drm (search paths /usr/lib/dri)
    failed to load driver: sun4i-drm
    QQ'un aurait-il une idée ou je pourrai trouve ce module ?

    Merci

  5. #5
    Membre actif
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juin 2019
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2019
    Messages : 105
    Points : 241
    Points
    241
    Par défaut
    Juste dans le cas où des gens tomberaient sur cette discussion ...

    J'ai laissé tomber :
    • j'ai bien réussi à compiler le driver (non sans mal)
    • mais SDL plante des le début
    • aucune aide sur le forum ... je suis passé à Cairo qui lui fonctionne sans devoir batailler. De toutes facons, SDL était trop lourd pour mes objectifs.


    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 20/08/2002, 18h01
  2. [langage] comment créer des fichiers ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 05/05/2002, 16h33
  3. Réponses: 7
    Dernier message: 01/05/2002, 20h23
  4. Comment faire pour créer un bitmap
    Par GliGli dans le forum C++Builder
    Réponses: 2
    Dernier message: 24/04/2002, 15h41
  5. Comment débuter en programmation ?
    Par Marc Lussac dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2002, 11h29

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