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

Contribuez Discussion :

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


Sujet :

Contribuez

  1. #1
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut mk-project un T.D.E (Terminal Development Environment) basé sur make.
    Salut les C/C++,

    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.




    + Page de présentation de mk-project.

    + Documentation de mk-project.

    + github de mk-project.




    mk-project permet d'automatiser complètement la compilation, l'exécution, le débogage et l'investigation de code machine, le profilage,...

    Mais ce n'est pas tout car mk-project permet aussi de générer de la documentation a base de 3 différents langages de balisage:

    + texinfo.

    + markdown (Dans plusieurs dialectes.)

    + ReST (ReSTructured Text)

    Mais si vous désirez utilisez un moteur de documentation plus avancé, tel que sphinx, doxygen, ou autres, la manipulation est facile et bien décrite dans la documentation.




    mk-project permet aussi d'enjoliver votre code grâce aux outils suivants:

    + indent

    + astyle

    + bcpp

    + pindent

    Avec beaucoup de styles prédéfinis mais vous laissant une ouverture afin de complètement personnaliser votre formatage de code source.




    mk-project permet de créer une archive de votre projet au format suivants:

    + tar

    + tar.gz

    + tar.bz2

    + zip




    Et mk-project permet aussi bien d'autres choses...

    mk-project est disponible sous forme de paquetage debian et d'archive tar.gz.

    :note: Une fois installer vous pourrez hacker le code grâce au Makefile contenus dans le dossier de destination (habituellement /usr/local/share/mk-project).

    .. warning::

    mk-project a pas mal de dépendances entre autre la bibliothèque libvte-2.91 qui vient d'apparaître dans les dépôts remplaçant l'ancienne version libvte-2.90
    sur laquelle mon éditeur de texte a terminaux intégrées it-edit (Integrated Terminals Editor) est basé (sniff !).




    Dépendances de mk-project:

    * libgtk-3-dev

    * libvte-2.91-dev

    * libxml2-dev

    * pandoc

    * python(3)-docutils

    * texinfo

    * xdg-utils

    * findutils

    * libc-bin

    * binutils

    * bsdmainutils

    * indent

    * astyle

    * bcpp

    * gettext

    * make

    P.S: Je suis ouvert a toute formes de critiques mais j'ai conçus cet outil pour des besoins personnels et si je le distribue c'est parce que je pense qu'il peut être utile a d'autres (les utilisateurs de vi et compagnie vont être ravis).
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Parmi les dépendances, ne pouvez vous pas faire en sorte que si, disons indent manque, qu'il soit juste désactivé. Ainsi, votre projet ne dépend plus vraiment de milles choses, mais lorsque dispo, il utilise les milles outils de la machine (cela me semble possible pour tous les langages supportés + les enjoliveur de code + générateurs de code).

    Si vous utilisez GTK, c'est qu'il y a une interface graphique ?

    Même en lisant la documentation, j'ai pas très bien compris comment faire un nouveau projet. En lisant en diagonale, j'ai juste vu ce que je devais savoir comme info, avant de créer le projet.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    Merci Little white pour votre commentaire,

    Alors pour créer un projet c'est assez simple, il y a une G.U.I,



    laissez vous guider...

    "D'ailleurs la plupart des informations demandées sont optionnelles ou ont des valeurs par défaut bien définis."




    Sinon vous pouvez télécharger le tarball (mk-project-1.0.0.tar.gz) pour ne pas souffrir d'un paquetage manquant car le script
    ne demande que le stricte nécessaire pour retourner sans erreur,

    et vous présentera une liste de paquetage manquants,

    qui comme dit dans la documentation (que j'ai maladroitement rédigé je le reconnais) sont optionnelles.

    Car si un un binaire vous manque make le détectera et ne vous proposera pas le target correspondant.

    ---

    Merci pour vos commentaires, ça serai pas mal d'avoir des réactions des utilisateurs d'éditeurs en ligne de commande comme vim.

    PS: Si vous utilisez un tel éditeur merci de bien vouloir me signaler si un raccourcis clavier est en conflit !
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Ça ne compile pas .
    make[2]*: on entre dans le répertoire «*/tmp/mk-project-1.0.0/source*»
    gcc -DHAVE_CONFIG_H -I. -I.. -DPREFIX=\"/usr/local\" -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -g -O2 -MT ./mk_project-main.o -MD -MP -MF .deps/mk_project-main.Tpo -c -o ./mk_project-main.o `test -f './main.c' || echo './'`./main.c
    In file included from ./main.c:36:0:
    ././GUI/setup_gui.h:43:22: erreur fatale*: ./dialog.h : Aucun fichier ou dossier de ce type
    #include "./dialog.h"
    ^
    compilation terminée.
    make[2]: *** [Makefile:586: mk_project-main.o] Error 1
    make[2]*: on quitte le répertoire «*/tmp/mk-project-1.0.0/source*»
    make[1]: *** [Makefile:464: all-recursive] Error 1
    make[1]*: on quitte le répertoire «*/tmp/mk-project-1.0.0*»
    make: *** [Makefile:381: all] Error 2
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    Drôle d'erreur,

    car je n'ai pas de fichier dialog.c correspondant dans toute l'arborescence donc en enlevant la ligne:

    dans le fichier ./source/GUI/setup_gui.h ça devrai fonctionner ???

    Bizarre car j'ai tester le tarball maintes fois !

    Je suis désolé, je vais m'empresser de corriger cette erreur.
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Ok, ça compile. Après, ça ne se lance pas, car il ne peut écrire le fichier de configuration. Je conseille d'utiliser le répertoire utilisateur pour les fichiers de config.
    Impossible de sélectionner /tmp comme dossier du projet (car il souhaite créer un sous dossier).
    J'ai créé un projet, il n'y avait pas de Makefile (?) (je n'ai pas lu la documentation).
    Images attachées Images attachées   
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    J'ai remarquer effectivement, pendant que je reparais l'erreur, que mon build ne supporte pas le VPATH, ou d'installation dans un dossier DESTDIR.

    J'ai tout essayer afin que cela soit possible, fonctionne déjà mieux, si l'on enlève la macro m4

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AC_CONFIG_SRCDIR([.])
    Et/ou (je ne sais pas) dans le Makefile.am principale l'on enlève le dossier courant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    # SUBDIRS = source data man texi desktop doc
    # instead of
    SUBDIRS = . source data man texi desktop doc
    Cela marche déjà un peu mieux.

    Pourrrai tu m'aider concernant ce problème ?




    Je conseille d'utiliser le répertoire utilisateur pour les fichiers de config.
    D'accords mais si il y a plusieurs utilisateurs ?

    J'utilise $(pkgdatadir) (/usr/share/mk-project ou /usr/local/share/mk-project) pour les fichiers de configurations.




    Impossible de sélectionner /tmp comme dossier du projet (car il souhaite créer un sous dossier).
    Il faut que le dossier choisie soit vide et le sélecteur de dossier est un peu capricieux mais il permet de créer des dossiers vierges.




    J'ai créé un projet, il n'y avait pas de Makefile (?) (je n'ai pas lu la documentation).
    Normal puisque tu n'a pas installer complètement le programme et les templates pour les Makefiles sont dans le dossier du programme (which default to /usr/local/share/mk-project).

    PS: Je voudrai bien te certifier que mon build enlève tout les fichiers installés sauf que ce dernier n'enlève pas les quelques icônes de mimetype des fichiers *.mkp qui sont les fichiers des projets mk-project comme un fichier *.cbp (pour code-block).

    J'ai pris la décision de laisser ces quelques icônes, qui s'installe grâce a xdg-resource dans le icon-theme par défaut, au cas ou après désinstallation il vous reste des dossiers de projets mk-project.

    Exception qui confirme la règle de mes builds: absolument tout enlever ce que l'on installe.

    PS: Qu'est que j'ai fait de travers pour que le système de VPATH ne fonctionne pas, ce n'est pas automatique avec automake ?

    Je te redemande cordialement ton aide si tu a le temps afin de régler le problème de VPATH ou DESTDIR.

    Ont pourrai commencer par la ligne de commande que tu a utiliser pour ./configure...
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

  8. #8
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Citation Envoyé par Luke spywoker Voir le message
    D'accords mais si il y a plusieurs utilisateurs ?
    Chacun à sa propre configuration (comme pour vim, nano, firefox...).

    Citation Envoyé par Luke spywoker Voir le message
    Il faut que le dossier choisie soit vide et le sélecteur de dossier est un peu capricieux mais il permet de créer des dossiers vierges.
    Sachant que l'on précise le nom du projet juste avant, pourquoi ne pas laisser le choix de /tmp possible et y créer un répertoire nom_de_projet dans le répertoire sélectionné (solution de Qt Creator).

    Citation Envoyé par Luke spywoker Voir le message
    Ont pourrai commencer par la ligne de commande que tu a utiliser pour ./configure...
    J'ai juste fait :
    ./configure
    make -j 4
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  9. #9
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    Merci pour ton intérêt porté a mon programme

    Chacun à sa propre configuration (comme pour vim, nano, firefox...).
    Désolé mais j'ai pas bien saisie: si je copie les fichiers de configuration dans le $HOME de celui qui installe le programme, alors que vont faire les autres utilisateurs si il veulent utiliser le programme, ça ne marchera pas ?

    Sachant que l'on précise le nom du projet juste avant, pourquoi ne pas laisser le choix de /tmp possible et y créer un répertoire nom_de_projet dans le répertoire sélectionné (solution de Qt Creator).
    Je pense que c'est une mauvaise solution car le dossier /tmp est vidé de son contenus a chaque shutdown, non ?

    :note: Il faut savoir que le dossier du projet est a conserver car il contient (entre autre) les (futures) sources, etc... donc /tmp ets une très mauvaise destination a moins de faire un make dist-* avant chaque shutdown et de copier l'archive autre part.

    Après il est vrai que le fait que comme l'on choisie un nom de projet l'on pourrai créer un dossier de projet (avec un nom identique) dans le dossier sélectionner.

    A la place il faut renseigner un dossier de destination pour le projet (vide).

    ---

    J'ai juste fait :
    ./configure
    make -j 4
    Mais tu n'a pas taper sudo make install donc normal que le programme ne fonctionne pas correctement sans les dépendances.

    ---

    Je pensais que tu avait taper quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ./configure --prefix="./mon_tmp_dossier"
    make -j 4 # ou make -j 4 DESTDIR="./mon dossier_tmp"
    Car je pensais que tu faisait une installation de teste ?
    Et que tu avait une arborescence réserver au testes de programmes.

    Merci pour ton intérêt porté a mon programme mais si tu ne l'installe pas convenablement il ne risque pas de marcher correctement.

    PS: Si tu a quelques informations utiles ou idées pour une installation de ce type, concernant automake, (surtout pour DESTDIR) je suis preneur, ça serai sympa de m'informer.
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

  10. #10
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Citation Envoyé par Luke spywoker Voir le message
    Désolé mais j'ai pas bien saisie: si je copie les fichiers de configuration dans le $HOME de celui qui installe le programme, alors que vont faire les autres utilisateurs si il veulent utiliser le programme, ça ne marchera pas ?
    Bien vu (et encore, c'est discutable). Cela veut dire qu'il faut créer les fichiers de configurations au démarrage de l'application (beaucoup font ainsi).

    Citation Envoyé par Luke spywoker Voir le message
    Je pense que c'est une mauvaise solution car le dossier /tmp est vidé de son contenus a chaque shutdown, non ?
    Ca, c'est mon souci (enfin, le souci de l'utilisateur). Si je suis débile, j'ai le droit . J'ai pris /tmp, comme j'aurais pu prendre tout autre répertoire. Mais si je veux prendre /tmp, c'est mon choix.

    Mais tu n'a pas taper sudo make install donc normal que le programme ne fonctionne pas correctement sans les dépendances.
    Ce point là est discutable
    J'ai déjà vu des programmes fonctionner sans faire d'install.

    Merci pour ton intérêt porté a mon programme mais si tu ne l'installe pas convenablement il ne risque pas de marcher correctement.
    Je retesterai avec un prefix. Mais, j'estime que de ne pas l'installer, ne doit pas gêner son fonctionnement (peut être je me trompe )
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  11. #11
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    Si je suis débile, j'ai le droit . J'ai pris /tmp, comme j'aurais pu prendre tout autre répertoire. Mais si je veux prendre /tmp, c'est mon choix.
    Je calcule avec la bêtise ou les différences des utilisateurs, mais dans ce cas c'est absurde, sauf que je sais que tu voulais simplement tester mon programme.

    Du coup l'on en revient avec l'idée d'arborescence pour tester des programmes.

    Les autotools prennent cela en charge sous forme de DESTDIR ou sous une autre forme (je crois) d'ailleurs je ne sais si je dois ajouter:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    # Fichier automake.am 
    desktopdir = /usr/share/applications
     
    desktop:
    [TAB]@echo "[Desktop Entry]" > $(DESTDIR)$(desktopdir)/$(PACKAGE).desktop
    [TAB]@echo "Name=mk-project" >> $(DESTDIR)$(desktopdir)/$(PACKAGE).desktop
    ...
     
    install-data-hook:
    [TAB]$(MAKE) desktop
    ...
     
    uninstall-hook:
    [TAB]- rm -f $(DESTDIR)/(desktopdir)/$(PACKAGE).desktop
    ...
    $(DESTDIR) dans ce cas là ?


    Mais, j'estime que de ne pas l'installer, ne doit pas gêner son fonctionnement (peut être je me trompe )
    L'on en revient là ou l'on en était.

    ça dépends sûrement si le programme a des dépendances qu'il faut bien localiser ou si c'est un utilitaire façon philosophie UNIX: de petits outils qui font une seule tâche et qui le font bien (qui du coup n'ont pas de dépendances).

    Mais moi j'estime que les instructions sont:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ./configure
    make
    sudo make install
    Après l'on peut passer des arguments a ces 3 commandes, si l'on désire autre chose.

    D'ailleurs tu te trompe toi même car tu m'a dit d'installer les fichiers de configurations dans le $HOME. même si mon programme appelle une fonction de génération de paramètre par défaut si il ne peut lire le fichier de configuration mais c'est plûtot prévue si l'on efface ce dernier ou si l'on veut générer le fichier au premier lancement, mais le problème est que il requiert un dossier afin de le stocker...

    Ne te vexe pas mais je pense que tu a tort sauf utilitaires philosophie UNIX qui pourrait fonctionner sans installation.

    Mais tout cela reste encore a débattre et a méditer: Par exemple comme kannagi package ses créations.
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

  12. #12
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Ce que je voulais dire, c'est : placez les fichiers de configuration dans le répertoire utilisateur. La bonne solution (aka : ce que je ferai), s'avère de les créer si les fichiers n'existent pas (dans le répertoire utilisateur).
    Pour le sélecteur de dossier (pour indiquer où le projet ira) ... son comportement n'est pas intuitif. En effet, il y a une icone pour créer un nouveau dossier et lorsque nous sommes dans ce nouveau dossier, il faut toujours préciser le nom d'un dossier, que lui, il va créé. Pourquoi ne pas pouvoir immédiatement sélectionner le dossier (et au pire, créer un nouveau dossier avec le nom du projet).
    Je pense que le terminal devrait se placer directement dans le dossier du projet créer une fois le projet créé. Il semble le faire, mais après un certain temps (un peu bizarre).
    Dans la reconfiguration du projet, je ne peux pas changer son numéro de version ?
    À quoi sert de préciser un éditeur (geany) lors de la configuration ?

    Pouvez-vous rajouter l'option de créer un projet vide (sans fichier de code, pour démarrer) ?

    Faire un make du projet généré est bourrin lorsque l'on n'a pas toutes les dépendances :
    which: no evince in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no xpdf in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no mupdf in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pdfcube in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no fbreader in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pdf-viewer in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no okular in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no strace in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no ltrace in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no indent in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no indent in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/code_formatter.mk:197: Install the indent package !!!
    which: no astyle in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/code_formatter.mk:612: Install the astyle package !!!
    which: no bcpp in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/code_formatter.mk:718: Install the bcpp package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2html in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:124: Install the python(3)-docutils package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:131: Install the pandoc package !!!
    which: no rst2pdf in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:140: Install the rst2pdf package !!!
    which: no rst2man in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:148: Install the python(3)-docutils package !!!
    which: no rst2odt in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:156: Install the python(3)-docutils package !!!
    which: no rst2latex in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:165: Install the python(3)-docutils package !!!
    which: no rst2xml in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:180: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:187: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:202: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:209: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:230: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:238: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:246: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:253: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:268: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:275: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:288: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:296: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:312: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    .SubMakefiles/documentation.mk:357: Install the pandoc package !!!
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2html in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2pdf in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2man in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2odt in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2xml in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no rst2latex in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no pandoc in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no strace in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no ltrace in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no indent in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no astyle in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    which: no bcpp in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    cc -c source/main.c -o source/main.o
    cc -c source/global_vars.c -o source/global_vars.o
    cc -o ./bin/toto ./source/main.o ./source/global_vars.o
    Lorsque de la configuration du projet, le bouton pour passer à l'étape suivante s'appelle "Apply". Il me semble plus naturel de l'appeler "Next" (il est à coté d'un bouton back en plus).
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  13. #13
    Membre expérimenté
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Points : 1 742
    Points
    1 742
    Par défaut
    Encore merci pour votre intérêt porter a mk-project,

    En faîtes tu a complètement raison: j'explique...

    Ce programme nécessite de revoir quelques points, j'ai peut-être été un peu fainéant et du coup, car je voulais dans un premier temps créer un programme pour des besoins personnelle puis j'ai rajouter certaines chose surtout le terminal éditeur car je n'utilise pas vim et compagnie mais mon éditeur en mode graphique it-edit qui se marie bien avec le programme car étant un I.T.E Integrated Terminals Editor c.a.d que l'on peut aisément taper des commandes dans des terminaux habilement placer.

    Par rapport aux autres éditeur proposant un terminal a mon humble avis.

    Et donc la G.U.I est faites pour les autres: les utilisateurs de vim, nano, edcetera... et m'est inutile pouvant faire toutes les modifications du Makefile de base a la mains.

    Par exemple ajouter un fichier au projet.

    Concernant ton idée de créer un projet sans fichiers: je voulais aussi transmettre mon savoir faire comme dit dans le mot de la fin de la doc.

    Mais je retiens ton idée et pense fortement ne pas polluer le projet d'un autre avec mon savoir faire de little C/C++.

    Je vais éviter les messages de warnings quand un binaire n'est pas présent, au vue de la sortie dans ce cas.

    Lorsque de la configuration du projet, le bouton pour passer à l'étape suivante s'appelle "Apply". Il me semble plus naturel de l'appeler "Next" (il est à coté d'un bouton back en plus).
    Cela est dû a gtk car je programme, ce coup-ci, de sorte a ce que l'interface soit totalement en anglais et comme le widget assistant est un peu capricieux aussi car le bouton peut s'appeler Next et non Apply mais dans ce cas il me semble qu'il n'est pas possible de finaliser le projet du moins je n'ai pas réussis a en faire de telle sorte...

    C'est pas toujours comme ont veut c'est souvent comme ont peut.

    :note: Afin que le programme soit entièrement en anglais, indépendamment de la localisation, j'utilise gettext et setlocal sinon il y a des incohérence comme certains string automatiquement traduit: Cancel en Annuler et même Files en Fichiers !?!

    Pour le sélecteur de dossier (pour indiquer où le projet ira) ... son comportement n'est pas intuitif. En effet, il y a une icone pour créer un nouveau dossier et lorsque nous sommes dans ce nouveau dossier, il faut toujours préciser le nom d'un dossier, que lui, il va créé.
    C'est entièrement la faute de gtk (Nouvelle (version) génération comme les boutons en haut au lieux d'en bas).

    Pourquoi ne pas pouvoir immédiatement sélectionner le dossier (et au pire, créer un nouveau dossier avec le nom du projet).
    Je vais suivre ton conseil et créer un nouveau dossier avec le nom du projet au lieu de sélectionner un dossier l'on sélectionnera une destination.

    Si tu a d'autres conseils, idées, remarques, il sont la bienvenue.

    Merci encore je me suis aperçus grâce a toi que mon programme souffre de quelques lacunes importantes malgré que la version actuelle me convient parfaitement a moi.

    Mais je vais faire les corrections nécessaires pour les autres.

    H.S: A tu une idée pourquoi les participant du forum https://www.ubuntu-fr.org/ reste muet a chaque nouvelle création, est ce-que Ubuntu est un système Linux pour utilisateur lambda (Windows like presque) et non de programmeur... Je suis franchement déçus de cette communauté et non de l'OS !

    J'utilise Ubuntu a cause des drivers NVIDIA disponible, dommage que la philo debian ne permette pas ce genre de compromis, surtout pour OpenGL.

    Anecdote: j'ai crasher ma première installation de debian a la recherche de driver NVIDIA en téléchargeant des paquetages de drivers qui mon couté un écran tout noir et impossible de réparer connaissant mal ce système, dommage il faut que je réessaye.

    J'allais oublier
    À quoi sert de préciser un éditeur (geany) lors de la configuration ?
    Et bien a rien si ce n'est pour de future utilisations et a remplir le fenêtre de l'asssitant qui n'a que 2 composante sinon: les options passer a make a chaque appel et la compression.
    C'est purement esthétique.

    Désolé pour la confusion mais l'information pourrai être utile en cas de collaboration d'un programmeur utilisant un éditeur en mode terminal.
    Pour faire tes armes:
    Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
    Et sois toujours bien armé avant de te lancer.
    Le hasard ne sourit qu'aux gens préparés...
    Site: Website programmation international (www.open-source-projects.net)
    Site: Website imagerie 3D (www.3dreaming-imaging.net)
    Testez aux moins pendant une semaine l'éditeur avec terminaux intégrées it-edit Vous l'adopterai sûrement !
    FUN is HARD WORK !!!

Discussions similaires

  1. terminal et double clic sur dossier
    Par kamouminator dans le forum Linux
    Réponses: 1
    Dernier message: 14/04/2009, 11h41
  2. Réponses: 1
    Dernier message: 31/10/2008, 08h27
  3. Réponses: 15
    Dernier message: 20/10/2007, 10h49
  4. Réponses: 9
    Dernier message: 10/04/2007, 10h01

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