OVH Cloud OVH Cloud

c++, compilation et multiOS

7 réponses
Avatar
3dsman
salut!

je suis entrain de faire un soft opensource (jusqu'a maintenant sur
vc++6) qui devra tourner sous windows et linux.

j'ai reussi a le compiler sous linux avec eclipse et cdt et sous windows
avec vc++6.

ma question est:
comment puis-je de maniere simple compiler sous les deux systemes?
Parcequ'utiliser 2 projets différents (un vc++ pour win et un eclipse
pour linux) c'est un peu galere a maintenir et a utiliser pour les gens
qui voudraient recompiler eux meme.

En fait j'ai utilisé eclipse et cdt en esperant (vu qu'il existe sur les
2 systeme) que je pourais n'avoir qu'un seul fichier projet pour les 2
systeme.

si vous avez des idées ou des suggestions...

merci!

7 réponses

Avatar
Franck Branjonneau
3dsman écrivait:

je suis entrain de faire un soft opensource (jusqu'a maintenant sur
vc++6) qui devra tourner sous windows et linux.

ma question est:
comment puis-je de maniere simple compiler sous les deux systemes?

si vous avez des idées ou des suggestions...


Lire le groupe ?

Subject: Instabilité de MSVC
Message-ID: <4343e299$0$7824$
--
Franck Branjonneau

Avatar
3dsman
Lire le groupe ?

Subject: Instabilité de MSVC
Message-ID: <4343e299$0$7824$
disont que le sujet du post ne me semblais pas trop se raprocher de ma

problematique :-)


ok donc faut que je cherche du cote des autotools!
merci!

Avatar
Marc Boyer
3dsman a écrit :

ok donc faut que je cherche du cote des autotools!


Disons que cela dépend beaucoup de l'ampleur du
projet. Sur un projet où le code dépend peut de
l'archi, make peut suffire.

Marc Boyer
--
À vélo, prendre une rue à contre-sens est moins dangeureux
que prendre un boulevard dans le sens légal. À qui la faute ?

Avatar
kanze
3dsman wrote:

je suis entrain de faire un soft opensource (jusqu'a
maintenant sur vc++6) qui devra tourner sous windows et linux.

j'ai reussi a le compiler sous linux avec eclipse et cdt et
sous windows avec vc++6.

ma question est:
comment puis-je de maniere simple compiler sous les deux
systemes? Parce qu'utiliser 2 projets différents (un vc++ pour
win et un eclipse pour linux) c'est un peu galere a maintenir
et a utiliser pour les gens qui voudraient recompiler eux
meme.

En fait j'ai utilisé eclipse et cdt en esperant (vu qu'il
existe sur les 2 systeme) que je pourais n'avoir qu'un seul
fichier projet pour les 2 systeme.

si vous avez des idées ou des suggestions...


La plus simple, c'est d'utiliser un environement qui est présent
sur les deux. Je développe normalement sous Unix (Solaris ou
Linux, selon le cas, actuellement), avec vim comme éditeur et
mes propres fichiers de make. Sous Windows, j'utilise CygWin et
vim, et je me rétrouve avec le même environement.

Dans la pratique, je trouve que dès la gestion du projet devient
un peu compliquée (et dès que le projet est multi-plateforme,
elle l'est), on se heurte de toute façon à des limites des IDE,
et qu'il faut aller au delà. Si les outils que j'utilise sont
nettement plus difficile à apprendre qu'un IDE, ils sont aussi
beaucoup plus souple, avec le résultat que je suis beaucoup plus
productif que si j'étais limité à ce que m'offre un IDE. Si tu
veux réelement faire des applications multi-plateforme, je crois
que c'est un apprentissage que tu vas être obligé à faire.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Avatar
kanze
Marc Boyer wrote:

ok donc faut que je cherche du cote des autotools!


Disons que cela dépend beaucoup de l'ampleur du projet. Sur
un projet où le code dépend peut de l'archi, make peut
suffire.


De même s'il en dépend tant que les autotools ne peuvent pas
gérer les différences. Dans mon cas, j'ai du code pour remonter
la pile. Ce qui veut dire, en gros, que si je n'ai pas prévu la
plateforme explicitement, le code n'y marchera pas -- le portage
consiste en bien plus que simplement choisir parmi quelques
options prédéfinies. Et je gère le projet uniquement avec GNU
make.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34


Avatar
David Geldreich
Bonjour à tous,

si vous avez des idées ou des suggestions...


Une autre solution est d'utiliser des outils comme cmake
(http://www.cmake.org), tmake (http://tmake.sourceforge.net/) ou qmake
(http://www.trolltech.com/products/qt/qmake.html)

Si tu cibles uniquement linux et windows, cela te permettra d'avoir un
seul fichier décrivant ton projet et de générer un projet visual studio
sous windows et un makefile sous linux.

A mon avis, les autotools c'est un peu overkill pour ce que tu veux
faire. L'avantage des outils ci-dessus est que tu peux continuer à
développer sous Visual Studion et de temps en temps recompiler pour
vérifier que ça fonctionne sous linux.

Bon courage.

Avatar
3dsman
Bonjour à tous,


si vous avez des idées ou des suggestions...



Une autre solution est d'utiliser des outils comme cmake
(http://www.cmake.org), tmake (http://tmake.sourceforge.net/) ou qmake
(http://www.trolltech.com/products/qt/qmake.html)

Si tu cibles uniquement linux et windows, cela te permettra d'avoir un
seul fichier décrivant ton projet et de générer un projet visual studio
sous windows et un makefile sous linux.

A mon avis, les autotools c'est un peu overkill pour ce que tu veux
faire. L'avantage des outils ci-dessus est que tu peux continuer à
développer sous Visual Studion et de temps en temps recompiler pour
vérifier que ça fonctionne sous linux.


ben en fait tant qu'a faire je prefererais passer complettement a
eclipse puisque comme dit judicieusement dans un message au dessus c'est
plus simple d'avoir un ide multi plateforme (et puis de toute facon j'ai
pas de sous pour les licences de vc++).

je vais aller jetter un oeil aux cites que tu cite quand meme :-)

merci