Accueil > Forum > > > > Rendre un programme C++ windows compatible sous Linux
Rendre un programme C++ windows compatible sous Linux
mardi 19 mai 2009 à 14:29:10 |
Rendre un programme C++ windows compatible sous Linux

Fathilde
|
Bonjour à tous
Voila mon probléme, j'ai ce code dans un programme: int __MW_DLL__ MW_SetClock() { int ret; struct date d; struct time t; MW_ControlT* mwc = MW_ControlT::getInstance(); getdate(&d); gettime(&t); return mwc->SetClock(d.da_year,d.da_mon,d.da_day, t.ti_hour,t.ti_min,t.ti_sec, m_Address); } Mais je doit rendre mon programme compatible sous linux et quand je compile ce fichier j'obtiens les erreurs suivantes: $ g++ -c MWControllerDLL.cpp -o MWControllerDLL.o MWControllerDLL.cpp: In function `int MW_SetClock()': MWControllerDLL.cpp:179: error: aggregate `date d' has incomplete type and canno t be defined MWControllerDLL.cpp:180: error: aggregate `time t' has incomplete type and canno t be defined MWControllerDLL.cpp:184: error: `getdate' undeclared (first use this function) MWControllerDLL.cpp:184: error: (Each undeclared identifier is reported only onc e for each function it appears in.) MWControllerDLL.cpp:185: error: `gettime' undeclared (first use this function)
Comment rendre ce programme compatible linux?
Merci pour votre temps!
|
|
mardi 19 mai 2009 à 15:21:21 |
Re : Rendre un programme C++ windows compatible sous Linux

fregolo52
|
getdate et gettime ca existe sous Windows ????? idem pour les structs !!!
tu peux me montrer des include parce que là, j'ai un doute.
|
|
mardi 19 mai 2009 à 15:27:25 |
Re : Rendre un programme C++ windows compatible sous Linux

fregolo52
|
Ah oui !! j'oublais tu es sous cygwin, je crois.
j'ai rien dit pour les fonctions, par contre les struct, j'ai un doute. Pourquoi c'est pas : struct tm t; ?
|
|
mardi 19 mai 2009 à 15:34:37 |
Re : Rendre un programme C++ windows compatible sous Linux

Fathilde
|
Ba ce programme là il marche sous borland C++ builder sur windows!! Et je connais pas les fonctions qu'il faut utiliser sous linux comme "tm t" J'ai trouvé quelques infos sur le net mais j'ai pas reussi a faire le même programme....
|
|
mardi 19 mai 2009 à 15:44:29 |
Re : Rendre un programme C++ windows compatible sous Linux

Fathilde
|
il y a un autre truc bizarre aussi...je peu compiler et executer tout mon programme sans aucune erreur sous Borland C++ builder mais quand j'essaye de compiler avec cygwin (ou même DevC++) j'ai l'erreur: MWControl.cpp:418: error: invalid conversion from `unsigned char*' to `const char*' Je ne comprend pas pourquoi Builder ne prend pas en compte cette erreur(qui me pose un probléme pour la portabilité aussi....)
Merci
|
|
mardi 19 mai 2009 à 15:50:16 |
Re : Rendre un programme C++ windows compatible sous Linux

fregolo52
|
Réponse acceptée !
pour ton erreur de cast, ca depend des compilos, ils mettent ces erreurs en error ou warning. ex :VC6 laisse aussi passer cette erreur de cast, pas VC++.NET
pour le reste, sur date time getdate et gettime sont des fonctions des librairies Borland. Bah là, pas le choix, code non portable, à toi de faire joujou avec les #ifdef WIN32 pour séparer les codes spécifiques windows et linux.
|
|
mardi 19 mai 2009 à 16:02:46 |
Re : Rendre un programme C++ windows compatible sous Linux

Fathilde
|
Ralala je peux plus le voir ce programme..  Connais tu les fonctions C++ de linux equivalent pour gettime...? Merci
|
|
mardi 19 mai 2009 à 16:16:58 |
Re : Rendre un programme C++ windows compatible sous Linux

fregolo52
|
Réponse acceptée !
pour moi gettime est une fonction Linux, ca n'existe pas sous windows. tu n'as pas le choix, c'est 2 codes différents
|
|
mardi 19 mai 2009 à 17:28:32 |
Re : Rendre un programme C++ windows compatible sous Linux

CptPingu
|
Tu peux aussi tenter d'utiliser Qt-Core, ou Boost (notamment Boost Date-time), qui fournissent des fonctions et classes compatibles tout OS (ils se chargent de toute la compabilité).
|
|
samedi 23 mai 2009 à 10:42:11 |
Re : Rendre un programme C++ windows compatible sous Linux

rt15
|
Salut, Pour les fonctions vraiment standards, regarder ce site.Microsoft propose un sacré paquet de fonctions de la librairie standard C (Ou dérivées...), parfois préfixées par un underscore. Fonctions temps ici. Et pour linux, les fonctions sont détaillées dans les pages du man. En ce qui concerne la programmation, on utilise surtout le man 2 (Fonctions systèmes, plutôt orienté OS. Exemple : time) et le man 3 (Fonctions de la lib C, de plus haut niveau que les fonctions systèmes. Exemple : difftime.). C++ Builder, je ne sais pas exactement ce qu'il propose, mais ils étaient de réputation plus proche de la norme que Visual C++ à une époque. Soit dit en passant la "norme" en C et en C++, POSIX ou autre, c'est une belle utopie...  M'enfin ça marchote.
|
|
Cette discussion est classée dans : programme, error, cpp, mw, mwcontrollerdll
Répondre à ce message
Sujets en rapport avec ce message
liste chainée [ par krater ]
sur un projet de video-club nous avons utilise une liste double chainées cepedant, nous avons quelque récurent à la compillation si une reponse pouvai
[HELP] Pb de compilation... [AHHHHHHH] [ par Mycado ]
Slt à tous,je me suis lancé dans le C++ mais j'ai des petits (gros plutot) pb lors de la compilation d'un programme.J'ai Visual C++ 6.0 sous windows ^
Des probleme help!!!!!!!!!!!!!!!! [ par echizen69 ]
BonjourJe suis nouveau dans le domaine de la programmation, et la j' ai essayer de créer un fichier .h et un fichier .cppPuis j' obtiens :LIBCD.lib(cr
#include [ par hm1964 ]
Je m'arrache les cheveux qui me restent avec le problème suivant :J'ai fait un programme simple avec VC++6.0 une fenêtre, un menu et un peu de texte d
Que fait Dev Cpp pour un prog win? [ par floindahouse1 ]
Lorsque je crée un projet "programme windows" sous dev cpp, et que je remplace tout le main.cpp par:#...int main(){MessageBox(....)}lorsque je lance l
BGI error : use 'initgraph' [ par xanadufr ]
Bonjour,J'ai un programme DOS qui tourne bien sur certain pc portable, qui me fait une erreur BGI lorsque je l'execute sur un IBM thinkpad p3 700.J'en
Qui peut m'aider à comprendre où est l'erreur [ par Minikisscool ]
Lorsque je compile j'ai ces erreurs :--------------------Configuration: test - Win32 Debug-----Compiling...test.cppC:\test\test.cpp(34) : warning C451
Pb de compilation [ par Minikisscool ]
Lorsque je compile j'ai ces erreurs : --------------------Configuration: test - Win32 Debug-----Compiling... test.cpp C:\test\test.cpp(34) : warning
error sscanf [ par Galmiza ]
Salut,J'ai une erreur lors de l'execution d'un programme au niveau d'un sscanf tout simple:tmp pointe vers "10.0" (c'est sûr, vérifié dans le debugger
probleme de compilation programme mysql [ par DindonOz ]
salut a tous. je viens de faire une petit programme en cpp sous linux, avec kdevelop, et lorsque je veux compiler mon fichier plusieurs erreurs appais
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|