IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Migration application windows -> Linux


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier Avatar de nicodn02
    Profil pro
    Consultant .NET
    Inscrit en
    Mars 2007
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant .NET

    Informations forums :
    Inscription : Mars 2007
    Messages : 263
    Points : 97
    Points
    97
    Par défaut Migration application windows -> Linux
    Bonsoir,
    j'ai développé une application sous windows et je desire desormais la mettre sous Linux.
    C'est un programme en C qui utilise la librairie mysql.
    Sous windows pas de soucis mais quand je compile sous Linux il me dis que le repertoire ou le fichier mysql est inexistant. Or j'ai bien installé une solution contenant mysql (xampp). Mysql est donc bien installé.

    voici les librairies pour mysql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include <winsock.h>
    #include <MYSQL/mysql.h>
    Que dois je faire ? Je dois savoir ou se trouve le fichier mysql sous linux qui s'est installé lors de l'installation de XAMPP. Et ensuite je dois le mettre dans le même répertoire que mon projet ?

    Par ailleurs, par la suite, je vais devoir utiliser l'utilitaire crone afin de lancer mon application deux fois par jour. Lors de cette configuration je dois juste donner l'exécutable et le fichier .dll associé a mysql ? est ce bien cela

    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 708
    Points : 31 018
    Points
    31 018
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par nicodn02 Voir le message
    Bonsoir,
    j'ai développé une application sous windows et je desire desormais la mettre sous Linux.
    C'est un programme en C qui utilise la librairie mysql.
    Sous windows pas de soucis mais quand je compile sous Linux il me dis que le repertoire ou le fichier mysql est inexistant. Or j'ai bien installé une solution contenant mysql (xampp). Mysql est donc bien installé.

    voici les librairies pour mysql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include <winsock.h>
    #include <MYSQL/mysql.h>
    Que dois je faire ? Je dois savoir ou se trouve le fichier mysql sous linux qui s'est installé lors de l'installation de XAMPP. Et ensuite je dois le mettre dans le même répertoire que mon projet ?

    Par ailleurs, par la suite, je vais devoir utiliser l'utilitaire crone afin de lancer mon application deux fois par jour. Lors de cette configuration je dois juste donner l'exécutable et le fichier .dll associé a mysql ? est ce bien cela

    Merci d'avance.
    C'est pas évident de porter une appli d'un système vers l'autre. Mais généralement on a plus de problèmes à porter une appli Linux (système très accessible aux programmeurs) vers Windows (beaucoup plus fermé)
    Bon, déjà XAMPP est normalement une appli Windows destinée à installer un serveur Apache, php et MySQL sous Windows parce que, sous Linux, l'ensemble de ces outils est déjà disponible par défaut. Donc t'as normalement pas besoin d'installer XAMP sous Linux (mais ce n'est bien évidemment pas interdit).

    Maintenant, ton appli utilise des headers de certains outils. Pour que tu puisses compiler ton appli, il te faut avoir sur ton système les "devel" qui sont les headers des librairies sinon tu n'as que la librairie de travail.
    Je m'explique
    Si tu veux utiliser MySQL sous Linux ben tu vas installer le rpm de mysql. Ce rpm contient les différents programmes et puis rien d'autre. Maintenant si tu veux développer ton propre développement qui va dialoguer avec MySQL, il te faut installer le package "mysql-devel" qui contient les headers associés, headers que tu pourras inclure. Et ce principe s'applique à toutes les autres librairies que tu veux utiliser.

    Pour le cron c'est tout simple. Il te suffit de taper "crontab -e" => Ca t'ouvre sous ton éditeur habituel (probablement "vi") un fichier qui te permet de programmer tes taches. Ce fichier est de la forme suivante
    - une tache par ligne
    - une ligne contient 6 champs minimum séparés par un espace
    - champ1: heure de lancement de la tache
    - champ2: minute de lancement de la tache
    - champ3: quantième du mois (le jour entre 1 et 31) de lancement
    - champ4: mois (entre 1 et 12) de lancement
    - champ5: jour de la semaine (0=dimanche, 6=samedi) de lancement
    - champ6 et suivants: programme que tu veux lancer avec éventuellement ses arguments d'utilisation
    Chaque champ peut contenir le caractère "*" qui signifie "peu importe". Autre détail, il n'y a pas de conflit entre les champs 3 et 4 et le champ5. C'est à dire que si tu demandes "1 12 6" la tache sera lancée chaque premier décembre et aussi chaque samedi (et non pas le premier décembre si c'est un samedi comme on pourrait le croire)
    Une fois sauvegardé, le fichier va s'appeler "/var/spool/cron/<ton login>" et le cron le prend en compte. Tu peux aussi obtenir le même résultat si tu ouvres par un éditeur quelconque le fichier "/var/spool/cron/<ton login>" mais faut ensuite que tu spécifies au cron de le reprendre en compte soit en arrêtant et redémarrant le cron, soit en lui envoyant le signal 1 (kill -1 pid_du_cron). Passer par la commande "crontab" t'évite donc toutes ces manip

    Voilà. Beaucoup de nouveaux concepts à assimiler d'un coup. La commande "man" peut t'aider => man crontab par exemple...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Membre régulier Avatar de nicodn02
    Profil pro
    Consultant .NET
    Inscrit en
    Mars 2007
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant .NET

    Informations forums :
    Inscription : Mars 2007
    Messages : 263
    Points : 97
    Points
    97
    Par défaut
    Je pensais qu'en installant XAMPP j'aurais installer les librairies dont j'ai besoin... Je dois donc uniquement installer les rpm de mysql alors ?

    Merci pour tes explications.

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 708
    Points : 31 018
    Points
    31 018
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par nicodn02 Voir le message
    Je pensais qu'en installant XAMPP j'aurais installer les librairies dont j'ai besoin...
    Oui. T'as installé les librairies dont t'as besoin pour exécuter mysql, pas celles qui te permettent de développer avec mysql

    Citation Envoyé par nicodn02 Voir le message
    Je dois donc uniquement installer les rpm de mysql alors ?
    Les libmysql-devel (ou un nom comme ça)
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Membre régulier Avatar de nicodn02
    Profil pro
    Consultant .NET
    Inscrit en
    Mars 2007
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant .NET

    Informations forums :
    Inscription : Mars 2007
    Messages : 263
    Points : 97
    Points
    97
    Par défaut
    D'accord.

    J'ai donc installé les rpm necessaires par le gestionnaire de paquage sous ubuntu.
    Comment peut on verifier que cela se soit bien installé ?
    et ensuite lors de la compilation de mon application en C je donne le liens vers toutes les librairies mysql ...

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Points : 329
    Points
    329
    Par défaut
    Déjà si tu mets <winsock.h> sur Linux ca ne marchera pas.

    Définis des macros pour des inclusions en fonction du système qui compile.

    Sous linux tu peux créer un Makefile pour compiler ton programme.

    Note: Sur Ubuntu les packages sont des deb pas des rpm .

    Note2 : winsock.h et mysql.h ne sont pas des librairies mais des entêtes
    et "library" se traduit par "bibliothèque" .

Discussions similaires

  1. Développer des applications Windows sous Linux
    Par FunkyTech dans le forum Linux
    Réponses: 2
    Dernier message: 13/02/2008, 09h31
  2. migration de windows vers linux
    Par acipeg dans le forum Requêtes
    Réponses: 1
    Dernier message: 23/11/2006, 14h53
  3. Application Windows sous Linux
    Par legrec dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 24/10/2006, 09h03
  4. Migration DHCP Windows vers Linux
    Par valal dans le forum Réseau
    Réponses: 3
    Dernier message: 04/05/2006, 09h38
  5. Réponses: 1
    Dernier message: 01/02/2005, 12h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo