Forum de la communauté SFML

Bindings - autres langages => C => Discussion démarrée par: CaMenerve le Avril 20, 2012, 07:40:03 pm

Titre: Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 20, 2012, 07:40:03 pm
Boooonsoir ! (moi qui était heureux d'avoir enfin trouvé une lib simple d'utilisation...)

Ca commence très mal ! déjà qu'il n'y a AUCUN TUTORIEL SUR LE WEB SUR: COMMENT INSTALLER CSMFL ET (surtout) COMMENT L'UTILISER ! Il y as un foutu problème en d'installation EN PLUS !

J'ai suivi A LA LETTRE et j'ai MÊME RECOMMENCER au moins une 10AINE DE FOIS le tuto sur l'installation de cette LIB !!!

En bref, ca ne reconnais aucunes des fonctions, style: "sfIPAddress ClientAddress;" etc...
J'ai essayé de linker les .a, j'ai réessayer de l'installer de re linker de re re re re linker et ca ne marche TOUJOURS PAS !
Il fut un temps ou ca m'ouvrais une console, puis un message d'erreur comme quoi SFML network.dll n'est point reconnu !

Je suis désespéré !
HELP ME !!!
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 20, 2012, 08:53:33 pm
Déjà il va falloir se calmer. C'est pas en criant et en spammant le forum que tu vas avoir plus de réponses, bien au contraire.

Ensuite il n'y a en effet pas de tutoriel pour CSFML, c'est un produit secondaire qui sert à d'autres bindings, mais il n'a jamais été conçu pour être utilisé directement (l'API publique pourrait être bien plus pratique si c'était le cas). Donc si tu tiens absolument à l'utiliser pour des raisons qui te sont propres, il faudra faire avec.

Et pour finir, tu cries beaucoup mais dans ton message il n'y a pas d'information qui pourrait nous aider à t'aider : par exemple la description de ce que tu as fait, ton compilateur / EDI, les messsages d'erreur que tu as, ...
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 20, 2012, 10:52:42 pm
C'est pourtant marqué, j'ai suivie le tuto que propose le site, le message d'erreur est pourtant clair, ca me met que la csfml netword.dll est introuvable
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 20, 2012, 10:57:22 pm
As-tu copié la DLL en question a un endroit où ton exécutable peut la trouver ? (par exemple dans le même répertoire que celui-ci)
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 21, 2012, 10:41:15 am
Non je l'avais pas fais, je viens de le faire et j'ai a nouveau un message d'erreur: Cette application n'a pas pu démarér car libgcc_s_dw-1.dll est introuvable [...]
J'ai essayé de mettre toutes les lib dans le rep. de mon .exe mais toujours le message d'erreur.
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 21, 2012, 10:45:16 am
libgcc_s_dw-1.dll se trouve dans ton répertoire MinGW/bin. Il faut la copier également.
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 21, 2012, 11:01:24 am
Ca fait 10m que je cherche et je ne trouve pas cette fichue dll...
Pourtant ce n'est pas expliqué qu'il faut faire toutes ces manipulations pour faire marcher la CSFML...
Le tuto d'installation est a revoir...
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 21, 2012, 11:14:13 am
Les tutoriels sont en train d'être revus pour SFML 2.

Mais ces problèmes ne sont pas liés à SFML, ce sont des problèmes liés à ton environnement de développement, ou à des connaissances générales à avoir quant au fonctionnement des bibliothèques. Tu auras en outre exactement les mêmes problématiques avec n'importe quelle autre bibliothèque.

Ce n'est donc pas aux tutoriels SFML de t'apprendre ça, c'est à toi d'apprendre toutes ces bases avec des tutoriels plus généraux et/ou concernant ton environnement de développement (OS, compilateur, EDI). Tout le monde se lance tête baissée dans l'utilisation de bibliothèques sans même connaître les fondamentaux de l'utilisation de celles-ci, sans savoir ce que sont les différents fichiers qu'ils manipulent (.a, .dll), sans savoir comment l'OS fonctionne via-à-vis de ceux-ci, etc. Et après c'est toujours ma faute... :-X

C'est comme si tu partais à la pêche sans savoir ce qu'est une canne à pêche ni comment l'utiliser, et blamais le vendeur d'appâts car tu n'attrapes rien.

C'est vraiment pénible de se faire crier dessus par des débutants qui ne prennent même pas la peine d'essayer d'apprendre des choses, il faut toujours donner tout cuit des instructions à suivre aveuglément...

Oui, moi aussi j'ai été un grand débutant. Et non, je n'ai jamais posté sur un forum pour engueuler qui que ce soit, quand j'avais un problème j'ai toujours cherché, trouvé, compris puis appliqué la solution. D'ailleurs je n'ai pratiquement jamais utilisé les forums pour quelque problème que ce soit, de mon point de vue quand on se donne un peu de mal on trouve toujours, et c'est bien plus bénéfique car au final on a appris quelque chose qu'on sera capable de réappliquer plus tard.

Et désolé pour ce post, d'habitude je reste courtois et sympas car les gens sont polis, mais quand j'ai des messages comme les tiens je ne me gêne pas.
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 21, 2012, 11:24:25 am
Non, je ne t'accuse en rien, je suis débutant dans la programmation mais je sais télécharger et ajouter une lib a mon IDE, j'ai sus installer par exemple: FMOD et SDL, leurs installations sont différentes mais assez similaire, la on me demande 10fois plus de choses a faire que ces derniers, et en plus ça ne fonctionne pas !

Je n'es moi meme pas généralement pas besoin de quelconque forum pour m'aider mais la, franchement IL N'Y A AUCUN TUTO, donc la, je n'est pas d'autre choix d'avoir recourt a ce forum !

J'ai essayé de la réinstaller en téléchargeant le fichier complet au lieu du du fichier de développement, le problème reste le même ! la dll gcc dois etre mise mais je ne sais pas ou elle se trouve !
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 21, 2012, 11:42:43 am
Ça a l'aire de marcher !
J'ai télécharger la .dll manquante, mise dans mon dossier .exe et ça marche enfin !

Merci tout de même :)
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 21, 2012, 12:55:26 pm
Citer
je sais télécharger et ajouter une lib a mon IDE, j'ai sus installer par exemple: FMOD et SDL, leurs installations sont différentes mais assez similaire, la on me demande 10fois plus de choses a faire que ces derniers, et en plus ça ne fonctionne pas !
Pour moi il n'y a rien de différent :
- inclure les en-têtes
- lier les bibliothèques
- copier les DLLs

Alors j'aimerais en savoir plus quant à ces "10 fois plus de choses" à faire pour CSFML selon toi.
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 21, 2012, 02:31:54 pm
Et bien la sdl il suffit de mettre le fichier dans le rep. de code::blocks puis de linker et de copié collé le fichier SDL.dll vers le .exe et terminé ca marche niquel j'ai eu besoin que d'un seul essaie pour l'installer !

Maintenant que j'ai réussi a installer SFML il faudrait des tutos en C, sauf qu'il y en a aucun :(

Aurais tu une référence sur une lib écrite en C qui traite les sockets a me donner ?
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 21, 2012, 05:04:24 pm
Citer
Et bien la sdl il suffit de mettre le fichier dans le rep. de code::blocks puis de linker et de copié collé le fichier SDL.dll vers le .exe et terminé ca marche niquel
C'est exactement pareil pour CSFML, il n'y a strictement aucune différence. Dis moi concrètement quelles étapes supplémentaires il t'a fallu (à part ce problème de DLL du compilo).

Citer
Maintenant que j'ai réussi a installer SFML il faudrait des tutos en C, sauf qu'il y en a aucun
Il n'y en aura jamais. Comme je l'ai expliqué, je maintiens CSFML uniquement comme base pour d'autres langages qui ne peuvent pas se lier à du C++ directement. Si quelqu'un veut un jour écrire un vrai binding C pour SFML, rien ne l'empêche.

Citer
Aurais tu une référence sur une lib écrite en C qui traite les sockets a me donner ?
Je ne sais pas trop, tu veux du très bas niveau (genre socket et puis c'est tout) ou bien du très haut niveau (du genre moteur réseau avec des abstractions) ?
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 21, 2012, 07:27:56 pm
Si ta une lib bas niveau traitant uniquement les sockets et assez simple d'utilisation ça serais parfait :)
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 22, 2012, 02:21:40 pm
Après plusieurs recherches je n'es pas trouvé de lib qui m’intéressait, celle de windows n'est pas clair et je n'y comprend pas, aurais-tu des lib bas niveau a me proposer ?
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 22, 2012, 04:05:47 pm
Non désolé, là je ne vois rien à te proposer. Ca fait longtemps que je n'ai pas utilisé une lib réseau, et de toute façons ce n'était pas en C.
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Avril 22, 2012, 04:24:21 pm
Bon tant pis, pourrais-tu faire un tuto pour la CSFML ?
Je ne t'en demanderai pas un gros mais un avec les fonctions les plus importantes ?!
Ça pourrai attirer déjà plus de monde coté développement C, je connais plusieurs personnes qui aimerais avoir ce genre de tuto !
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: Laurent le Avril 22, 2012, 06:23:25 pm
Non. Je le re-(re-)dis : mon binding C ne sert qu'à d'autres bindings, je n'ai aucun intérêt (et aucune envie) à faire de la doc et des tutoriels.

Mais bon du coup, comme c'est une transcription très exacte de l'API C++, tu peux prendre les tutoriels C++ et les appliquer directement en C.
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: JuHg le Mai 05, 2012, 03:52:50 pm
Bonjour,

Si je peut t'aider, j'utilise souvent la partie réseau en C, je te propose un code basique qui te permettra d'envoyer des char[].

pour le serveur:

// programme serveur
#include <stdio.h>
#include <stdlib.h>
#include <SFML/network.h>


int main()
{
    char buffer[256];
    size_t nbByteRecu=0;
    sfSocketTCP* socketServeur=sfSocketTCP_Create();
    sfSocketTCP* socketClient=sfSocketTCP_Create();
    sfIPAddress ipClient;

     printf("mise en ecoute...");
    if(!sfSocketTCP_Listen(socketServeur,8000))// attend une connexion
    {
         printf("Echec\n");
         system("PAUSE");
         return 1;
    }
    printf("OK\n");

    sfSocketTCP_Accept(socketServeur,&socketClient,&ipClient);
    printf("Client accepte!\n");
    sfSocketTCP_Send(socketClient,"salut client!\n",13);

    sfSocketTCP_Receive(socketClient,buffer,256,&nbByteRecu);

    printf("%s\n",buffer);
    system("pause");
    return 0;
}

et pour le client//client
#include <stdio.h>
#include <stdlib.h>
#include <SFML/network.h>



int main()
{
    char buffer[256];
    size_t nbByteRecu=0;
    sfSocketTCP* clientSocket;
    sfIPAddress servAddr=sfIPAddress_LocalHost();   //127.0.0.1

    clientSocket=sfSocketTCP_Create();
    printf("Attente du serveur");

    while(sfSocketTCP_Connect(clientSocket,8000,servAddr,0)!=sfSocketDone);

    printf("\nconnecte au serveur!\n");

    while(sfSocketDone!=sfSocketTCP_Receive(clientSocket,buffer,256,&nbByteRecu));

    printf("%s\n",buffer);

    sfSocketTCP_Send(clientSocket,"salut serveur!\n",16);

    system("pause");


    return 0;
}


As tu pensé a lire les headers des fonction? Elles contiennent plein d'informations si tu sais comprendre l'anglais of course  :P

J'espère t'avoir aidé bye!
Titre: Re : Installation CSFML(network) IMPOSSIBLE !
Posté par: CaMenerve le Mai 19, 2012, 04:31:45 pm
Salut, du coup je me suis mis au socket avec la lib de windows et je me débrouille tres bien avec !
Tant pis.