Lib SDL et programation système Sous UNIX

Fermé
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 26 janv. 2014 à 17:04
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 29 janv. 2014 à 16:35
Bonjour à tous

Voilà, je voudrais comprendre pourquoi mes instructions sont foireuses d'une part sur l'installation d'une librairie qui est la SDL sous PC-BSD, et une autres en programmation système sous le même OS . j'aimerais bien comprendre pourquoi.

Alors voilà j'ai procédé à l'installation de la SDL en faisant la commande suivante

sudo pkg_add -r sdl 

Celui-ci c'est bien installer , peut de temps après dans mon
code sources, j'ai inclus
#include <SDL/SDL.h> 
et procéder à la compilation, le compilateur me répond gentiment que l'entête SDL est invalide même en liens la bonne librairie
 -lSDL 

Alors, j'ai refais la même manip d'installation de la SDL pour m'assure que la SDL est installer, même -ci cela est barbare.
Donc j'ai fait a nouveau
sudo pkg_add -r sdl 
celui-ci répond sdl-1.2 est installé mais ! rebelote include incorrecte je comprend pas pourquoi, sachant que sont chemin d'acced est bien présent sur le système.

Deuxième question est en programmation système sous PC-BSD encore
mon programme utilise la mémoire partage mais ce pendant
l'ouverture et création de ma mémoire partager me renvoie -1 tout le temps même avec les droit nécessaire en ROOT sois je me suis planté dans la fonction en fournissant des mauvais paramètres, mais je ne pense pas sauf erreur de ma part voici la ligne.

 int iFd=shm_open(nNameShm,c_str(),O_RDWR|O_CREAT,S_IRWXU) ; 
elle me renvoie que -1 même en ROOT pourquoi ? j'aimerais comprendre.
Vos réponse me seront sur ces deux sujet me serons très utile je vous remercie d'avance à bientôt .

2 réponses

alfredeneumeuh Messages postés 9 Date d'inscription mercredi 29 janvier 2014 Statut Membre Dernière intervention 30 janvier 2014 1
29 janv. 2014 à 15:12
Je ne connais pas ce système mais sur le mien (debian) toutes les librairies viennent avec 2 paquets : un appelé 'truc' qui contient juste les librairies (necessaire pour faire tourner un programme _déjà_ compilé) et un autre (appelé 'truc-dev') qui contient les fichiers necessaires à la compilation, donc principalement les fichiers .h qui ont l'air de manquer ici (ils devraient normalement être dans /usr/include)

Pour le deuxième problème, peut-être que la variable errno contient un code d'erreur qui peut t'aider, si oui tu peux utiliser strerror(errno) pour avoir le message en toutes lettres (faudra inclure <string.h> et <errno.h> pour ça)

En esperant que ça aidera, sinon c'est promis j'arrète de donner mon avis sur des trucs que je connais pas :)
0
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 49
29 janv. 2014 à 16:35
Bonjour
Merci de m'avoir répondu pour la SDL le problème était juste d'activé un module pour que la SDL puisse être utilisé, je trouve toujours ça bizarre mais bon.
Quant au second problème il à été résolu
0