Forum Programmation.c++ Mon jeu fonctionne sur Linux

Posté par (page perso) . Licence CC by-sa
Tags :
19
15
mar.
2013

Hey salut ! Cela fait quelques semaines que j'avais sollicité les conseils de la communauté concernant un jeu que j'avais développé sous Windows en C# avec XNA. J'avais globalement terminé d'écrire l'essentiel du code, mais finalement je souhaitais porter tout le projet sur Linux pour de nombreuses raisons. La première est le manque cruel de shoot'em up sous Linux et la deuxième car j'apprécie énormément ce système d'exploitation. C'est mon premier projet en programmation et mon premier jeu, donc j'espère que (...)

Forum Programmation.c++ étudier le fonctionnement du cache

Posté par (page perso) .
Tags : aucun
6
9
juin
2009
Bonjour!

Nous avons un programme (très intensif au niveau CPU) que nous suspectons de mal utiliser le cache (une méthode d'une vingtaine de lignes consomme 70% du temps, qui se compte en jours...).
Avec un simple 'valgrind --tool=cachegrind', il est déjà possible d'avoir pas mal d'infos sur ce qui se passe, mais existe-t-il des outils permettant de voir plus en détail ce qui se passe au niveau du cache, à l'échelle d'une méthode c++? (ie: à quel moment nous corrompons (...)

Forum Programmation.c++ mk-project un T.D.E (Terminal Development Environment) basé sur make.

Posté par (page perso) . Licence CC by-sa
5
26
juin
2016

Salut les C/C++ et pythons,

je vient vous présenter ma dernière création: mk-project: un créateur, gestionnaire, de projets basé sur make.

mk-project permet de créer des projets C, C++, python2 et python3.

:note: Ceci est un poste dans le but que vous testiez mon programme afin de voir ce que vous en pensez…

Vos remarques, commentaires, etc… sont chaleureusement la bienvenue.

Ce poste sert de base afin d'amélioré le release final et est (...)

Forum Programmation.c++ pre-realease de battle-rage un jeu de combat a la street fighter.

4
20
oct.
2016

Salut les C++,

je vous annonce de part ce présent message la pre-release de ma dernière création:

battle-rage: un jeu de combat en 2D a la street fighter écrit en C++ avec la bibliothèque sdl2, sdl2_image, sdl2_ttf et sdl2_mixer.

1. Choisissez le mode de jeu:

  • Player vs Computer.

  • Player vs Player.

  • Computer vs Computer.

2. Puis choisissez votre combattant parmi les 16 combattants disponibles ainsi que votre adversaire ou laisser l'ordinateur tirer (...)

Forum Programmation.c++ faire du c++ sous linux ?

Posté par .
Tags : aucun
3
16
déc.
2008
Bonjour,
voilà, je voudrais faire du développement sous Linux. Autant je me débrouille pour la partie algorithmie mais tout ce qui est chaîne de compilation, j'avoue que ce n'est pas mon fort.

Voilà, j'ai un petit projet c++ d'une 20aine de fichiers .cpp et .h et j'aimerai bien compiler ça sous linux avec gcc, j'ai déjà installé le package gcc-c++ ainsi que make et sdl-devel, mais là... au moment de faire le makefile j'avoue que je suis coincé.

Autant (...)

Forum Programmation.c++ Programmation parallèle en POP-C++

Posté par .
Tags : aucun
3
22
juin
2009
Bonjour,

Pas de question ici mais un peu de pub pour un logiciel intéressant que nos avons développé il y a quelques années.

POP-C++ est un outil qui permet de faire tourner un programme orienté objet en parallèle sur plusieurs machines. C'est un logiciel libre qui étend le langage C++ et permet de transformer très simplement des classes C++ en des classes parallèles. Les objets parallèles générés peuvent alors tourner indépendamment sur plusieurs machines.

POP-C++ contient entre autre :
- (...)

Forum Programmation.c++ Paramètres d'un programme

Posté par (page perso) .
Tags : aucun
3
15
mar.
2011

Bonjour,

Petite question, je n'ai pas trouvé de document "officiel" mais existe-t-il une spécification pour le format à utiliser pour le passage des paramètres à un programme. (ex: "--param1 valeur1", etc.)

Connaissez-vous un document/site qui donne une spec complète ? merci

Forum Programmation.c++ OpenMP, synchronisation

Posté par .
Tags :
3
1
juin
2012

Bonjour tout le monde, j'ai un problème de synchronisation avec openMP:

J'ai un morceau de code multithreadé. En fin de ce bloc, je voudrais synchroniser les données créées par mes différents process.
Pour cela, je dois rapatrier ces données dans celles du thread 0.
Je dois donc absolument attendre que ce dernier ait terminé de travailler avant de commencer la synchro. Pour l'instant, je fais ça :

#pragma omp parallel
{
 Bla
 Bla
 Bla
#pragma omp barrier
 //On est certain
(...)

Forum Programmation.c++ Recherche bonne source pour apprendre le C++

Posté par (page perso) .
Tags :
3
23
août
2012

Bonjour à tous,

Voilà, je me dois de passer au C++. J'ai feuilleté google et pleins d'autres sites, puis j'ai pensé que linuxfr.org serait un bon endroit pour avoir quelques avis éclairés sur le sujet.

Je suis à la recherche d'une bonne source d'information pour apprendre le C++. Alors pas forcément la version 2011, puisqu'elle n'est pas vraiment encore utilisée en production.

Je fais appel à la sagesse de la foule ;)

Forum Programmation.c++ problème de parsing avec CLang

Posté par . Licence CC by-sa
Tags : aucun
3
29
avr.
2013

Salut à tous,
J'essaie de compiler un gros projet (qui compile sous g++ et MSVC avec plein de warning activés et -Werr) avec CLang.
Mais mon projet ne compile pas, j'ai reproduit le problème de compilation avec le petit code suivant:

$ cat clang.cpp

#include <iostream>

template<typename PTR1, typename PTR2>
class Foo
{
private:
    PTR1 _t1;
    PTR2 _t2;
public:
    Foo(PTR1 t1 = NULL, PTR2 t2 = NULL) :
(...)

Forum Programmation.c++ Quelle bibliothèque choisir pour un petit jeu?

Posté par (page perso) . Licence CC by-sa
Tags :
3
7
juil.
2013

Bonjour,

Je souhaite faire pendant les vacances un petit clone libre de Wonderland (excellent jeu au passage). C’est en gros un Sokoban amélioré car il y a pleins d’objets aux propriétés différentes, des monstres, et il faut prendre des clés (ici des espèces de pièces) pour ouvrir la grille qui permet d’accéder à la sortie.

Je pensais faire le jeu avec la SFML et Qt pour les menus. D’un côté je me dis que ça me permet de toucher aux (...)

Forum Programmation.c++ intel intrinsics

Posté par . Licence CC by-sa
3
22
nov.
2014

Bonjour,

Je manipule des vecteurs 16 bits avec les intrinsics SSE et GCC, tout fonctionne bien.
Il y a cependant une manipulation que je n'arrive pas à concrétiser : ces vecteurs 16 bits sont destinés à être affichés à l'écran en tant qu'image. Il me faut donc les convertir en vecteurs 8 bits après désaturation (je désature bien mais mon type de sortie __m128i contient toujours des integers 16 bits).

Quelqu'un connaîtrait-il la bonne méthode, tout en restant dans les (...)

Forum Programmation.c++ Tracer des diagrammes de Feynman

Posté par . Licence CC by-sa
Tags :
3
21
jan.
2015

En cherchant un programme capable de tracer un diagramme de Feynmann, je suis tombé sur ce site où l'on peut télécharger un programme c++ qui se charge de tracer ce que l'on veut. Ça se télécharge ici. Le problème c'est que le code date de plus de 10 ans et donc qu'un certain nombre de bibliothèques ont changé (c'était avant g++ 3.0). Étant donné que mes compétences en c++ sont rudimentaires, je n'arrive pas à modifier le code (...)

Forum Programmation.c++ classe C++, membre structure C et allocation dynamique

Posté par (page perso) . Licence CC by-sa
Tags :
3
21
avr.
2017

Bonjour,
je m'essaye (débutant) à développer une classe c++ dont certains membre sont des pointeurs vers des structures définies dans une bibliothèque c.
Par exemple :

/* maclasse.hh */
#include <une_lib_en_c.h>

class MaClasse {
public:
  MaClasse();
  ~MaClasse();
  int init();
private:
  ma_struct_c *s; //struct définie dans une_lib_en_c.h
};

MaClasse::MaClasse() {
  s = nullptr;
}

MaClasse::~MaClasse() {
  if (s != nullptr) {
    // s_destroy définie
(...)

Forum Programmation.c++ Framework c++ similaire à django par exemple

Posté par .
Tags : aucun
2
26
juin
2009
Bonjour,
je voudrais savoir si quelqu'un connait un framework intéressant (libre si possible) permettant de faire du Web en C++. Certes le python c'est très bien pour du site web mais qu'en est il des performances ?
J'avais vu que sur une application pour envoyer des SMS une société avait tout redéveloppé en C et les performances étaient 10 à 100 fois supérieures sur l'envoi des SMS (du coup 10 à 100 fois moins de ressources pour le même débit).
(...)

Forum Programmation.c++ Manipulation d'un programme interactif en C++

Posté par (page perso) .
Tags : aucun
2
17
juin
2010
Bonjour,

pour un projet, je souhaite générer des certificats client SSL de manière un peu automatisé. Pour cela, je souhaite créer un petit programme en C++ (enfin dans un langage compilé pour pouvoir l'utiliser avec un SUID bit) qui contrôlerai openssl et se chargerai de répondre aux différentes questions qu'il peut poser lors de la génération.

Je me doute qu'il doit s'agir de redirection de flux, mais je ne dois pas être très doué car je n'arrive pas à trouver (...)

Forum Programmation.c++ pbl ssh X11 forwarding avec XGetGeometry sous ubuntu 10.4

Posté par .
Tags : aucun
2
6
juil.
2010
Bonjour,

J'ai un probleme de configuration de mon ssh sous le dernier ubuntu 10.4 qui doit se connecter à un pc distant en utilisant ssh et faire du X11 forwarding.

J'utilise ssh -X ou -Y pour activer le X11 forwarding et/ou le X11 forwarding trusted, ca marche très bien pour les applications comme gedit, ou un lecteur vidéo perso qui créé sa propre fenêtre, mais dès que j'utilise une application qui va embeder la video dans un controle, , j'obtient (...)

Forum Programmation.c++ Trouver la fin d'une ligne après un charactère

Posté par .
Tags : aucun
2
1
août
2010
bonjour,

savez-vous comment analyser une chaîne en C++ pour déterminer si elle contient un début de ligne avant un charactère, et une fin de ligne après un autre ?

Si je teste avec par exemple :

strcmp(s,"mot")==0

puis plus loin :
strcmp(s,"fin_de_la_fin")==0

ça fonctionne pour détecter ces 2 mots, mais si je veux tester par exemple avec "mot" qui finit une ligne, ça ne fonctionne pas pareil :

strcmp(s,"mot\n")==0

Forum Programmation.c++ Multi-Thread

Posté par (page perso) .
Tags : aucun
2
18
fév.
2011
Bonjour,

J'ai une application multi-threadé (une partie GUI qui lance des thread en tâche de fond pour que l'utilisateur puisse continuer à bosser) que j'ai développé et qui tourne bien sur les machines que j'utilise.

Ces machines sont toutes des dual/quadru-core et donc cela marche très bien (la GUI n'est jamais bloqué).

J'aimerai pouvoir tester mon programme sur une machine ne possédant qu'un seul CPU, pour voir comme le programme réagit (voir si l'interface reste réactif, ...)

Est-il possible au (...)

Forum Programmation.c++ Compilateur "streamé"

Posté par (page perso) . Licence CC by-sa
Tags : aucun
2
24
mar.
2013

Salut à tous,

Je suis entrain de compiler Qt5 en -j5, et je bulle en attendant.

Donc voici:
Aujourd'hui, le processus de compilation, c'est ça:

  • je tape gcc moncode.c -c -o moncode.o
  • le shell lance /usr/bin/gcc dans un nouveau processus et lui passe les options
  • LDD entre en action, reloge les libs dont GCC a besoin (stdlib, ld, environ 500ko)
  • le main est enfin lancé, et parse les arguments
  • gcc va "automatiquement" lancer l'assembleur (ar) et l'éditeur de lien (ld), (...)

Forum Programmation.c++ operator new + boost::fast_pool_allocator

Posté par . Licence CC by-sa
2
20
avr.
2013

Bonjour,

Dans le cadre d'un de mes projets qui alloue/désalloue beaucoup d'objets de tailles diverses mais relativement petits (< 100o par objets), j'observe une consommation mémoire très supérieur à ce que ça devrait être.
Comme je soupçonne que la mémoire ressemble à du gruyère (plus il y a de gruyère, plus il y a de trous et plus il y a de trous, moins il y a de gruyère), j'ai voulu tester le pool allocator de boost en surchargeant l'operator (...)

Forum Programmation.c++ Compiler en statique, est-ce vraiment un problème ?

Posté par (page perso) . Licence CC by-sa
Tags : aucun
2
28
mai
2013

Salut, j'essaie tant bien que mal de compiler un binaire qui puisse tourner sur les distributions les plus célèbres à savoir Ubuntu, Fedora et OpenSuse. Sauf que c'est un vrai casse tête chinois au niveau des dépendances. Je compile sous ArchLinux et forcément j'ai en main les derniers versions de mes libs mais lorsque je décide de lancer mon binaire, l'une de ces distributions fournie jamais la bonne version de la lib.

Je me suis efforcé de rester en dynamique (...)

Forum Programmation.c++ Appeler une méthode non-const à partir de la méthode const homonyme

Posté par . Licence CC by-sa
Tags :
2
8
jan.
2014

Histoire de ne pas mourir idiot, je me demandais s'il y avait un moyen élégant d'appeler une méthode const à partir de son équivalent non-const. Le contexte ressemble à ça:

#include <vector>
#include <iostream>
#include <cassert>

using namespace std;

class A {
   public: 
      A(vector<double>);
      double mean();
      double mean() const;

   protected:
      void initialize();
      bool is_initialized;
      const vector<double> data;
      double sum_i;
};

A::A
(...)

Forum Programmation.c++ Techniques d'optimisation C++

Posté par . Licence CC by-sa
Tags : aucun
2
8
nov.
2014

Bonjour à tous

Je cherche des ressources sur le net à propos des techniques d'optimisation en c++, et bizarrement je ne trouve pas grand chose. Mon problème est simple : je développe des outils de traitement d'images à la fois de grandes tailles et nombreuses. Ce sont des algorithmes scientifiques peu efficaces quand ils sont implémentés "naïvement", mais qui peuvent être grandement optimisés… si je savais comment faire !
Il y a bien quelques tutos sur le principe de localité, le (...)

Forum Programmation.c++ gestion des capabilities

Posté par . Licence CC by-sa
2
30
nov.
2014

Bonjour.
Dans le cadre de mon projet jiguiviou, j'expérimente un client GVSP (un client de flux vidéo très haut débit) avec une socket dont le ring buffer est mappé en espace utilisateur. La gestion des interruptions du NIC et les multiples appels systèmes générés par recvmmsg consomment beaucoup de temps CPU, j'espère trouver dans cette méthode une solution élégante.
Pour cela j'utilise une socket packet. Le processus doit avoir un UID effectif nul ou la capacité CAP_NET_RAW.
J'ai donc isolé (...)