Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.
nombre réponses : 25

#0 Re : -1 »  Linux Hybryde » Le 17/05/2012, à 13:01

Maneithel
Réponses : 975

Je télécharge et je seed big_smile

#2 -1 »  [RÉSOLU] Lenteur de KMail (solution : vider la partition swap) » Le 05/09/2012, à 13:38

Maneithel
Réponses : 4

Bonjour !

J'utilise KMail depuis un bon bout de temps.  Hier, j'ai mis à jour mes courriels universitaires (compte POP3) lesquels comptaient environ 5000 courriels corrompus (sans expéditeur, date, contenu...) probablement du au serveur exchange ou quelque chose comme ça.  Je les ai effacés (pas mis à la corbeille, vraiment effacés).  KMail a mit plusieurs heures pour faire la suppression.  Aujourd'hui, de retour à un nombre de courriel normal dans mes dossiers, l'affichage du contenu d'un e-mail prend plusieurs minutes à charger.  La section de visualisation affiche «Réception du contenu du dossier», «Veuillez patienter...». 
Aussi, alors que KMail me fait patienter, la charge système est légère (cpu 4% utilisé par KMail).
Avez-vous une piste de solution ?

Quelques détails techniques:
KMail 4.8.4
KDE 4.8.4

#3 Re : -1 »  [RÉSOLU] Lenteur de KMail (solution : vider la partition swap) » Le 05/09/2012, à 15:12

Maneithel
Réponses : 4

Il semblerait que ce soit à cause que les données étaient restées en partition d'échange (swap) malgré l'espace disponible en RAM.  Pour la solution à ce genre de problème, il y a la Windows-like : redémarrer; ou de vider le swap en le désactivant/réactivant :

sudo swapoff -a
sudo swapon -a

Voilà !

#4 -1 »  Adapter dynamiquement l'affichage dual screen (début de solution !) » Le 06/09/2012, à 00:54

Maneithel
Réponses : 2

Bonjour !

J'ai un laptop avec Kubuntu 12.04.   J'adore utiliser un moniteur externe à la maison, mais je ne l'ai pas quand je vais à l'université.  Étant donné que j'utilise des pilotes propriétaires ATI, il est assez difficile de rendre dynamique le changement d'affichage de 1 à 2 écrans.  Jusqu'à aujourd'hui, j'utilisais une des deux méthodes suivantes :

    1. éxécuter le GUI de configuration de ATI

      sudo amdcccle
    2. Activer le double écran dans ce GUI si je suis à la maison et le simple écran si je suis sur le campus

    3. Déconnecter la session

    4. Reconnecter

    1. Configurer une bonne fois pour toute le simple écran

    2. Faire une sauvegarde de la configuration :

      sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.dual
    3. Configurer une bonne fois pour toute le double écran

    4. Faire une sauvegarde de la configuration :

      sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.mono
    5. Restaurer la bonne configuration au besoin

      sudo cp /etc/X11/xorg.conf.dual /etc/X11/xorg.conf

      ou

      sudo cp /etc/X11/xorg.conf.mon /etc/X11/xorg.conf
    6. Déconnecter la session

    7. Reconnecter la session

Ces deux méthodes sont... chiantes.  J'ai trouvé une autre solution viable et utilisable pour à peu près toutes les configurations big_smile !  Il me manque un petit détail de «bonnes pratiques» et j'aimerais votre avis.  Voici l'idée :



Méthode pour automatiser la prise en charge (ou non) d'un second écran

  1. Installez les pilotes de votre carte graphique (ATI, NVidia, libres, peu importe)

  2. Configurez l'affichage à un seul écran tel que vous le voudrez.

  3. Faites une sauvegarde de votre configuration de XOrg (mono pour «simple écran»):

    sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.mono
  4. Dans un terminal, éxécutez cette commande et notez le résultat dans un fichier texte :

    xrandr
  5. Branchez votre moniteur externe

  6. Configurez l'affichage comme vous le voulez.  Redémarrez au besoin.

  7. Faites une sauvegarde de votre configuration de XOrg (dual pour «double écran»):

    sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.dual
  8. Ouvrez le fichier texte qui contenait le résutat de la commande

    xrandr

    éxécutée précédemment.

  9. Dans un terminal, éxécutez cette commande de nouveau.

  10. Comparez le résultat avec celui noté dans le fichier texte.  Vous devriez remarquer qu'à un endroit où il était écrit «disconnected» il est maintenant écrit «connected».  Cela signifie que l'ordinateur a découvert que le moniteur est connecté.  Derrière le mot «connected», il y a l'identifiant de l'écran.  Par exemple, chez moi l'écran intégré au laptop s'appeller LVDS et l'écran externe s'appelle CRT1.  En branchant l'écran, la ligne où il y avait  CRT1 disconnected est devenue CRT1 connected après avoir branché l'écran.

  11. Notez ces deux mots (chez moi : CRT1 connected)

  12. Créez un script BASH : ouvrez un éditeur de texte, enregistrer sous le fichier au nom, par exemple : autoDetectMonitor.sh

  13. Copiez-y ce script :

    #!/bin/bash
    # 
    # Licence -- EN --
    # 
    # This program is free software: you can redistribute it and/or modify
    # it under the terms of the Lesser GNU General Public License as published 
    # by the Free Software Foundation, either version 3 of the License, or
    # (at your option) any later version.
    # 
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    # 
    # You should have received a copy of the Lesser GNU General Public License
    # along with this program.  If not, see <http://www.gnu.org/licenses/>.
    #
    #
    # Licence -- FR -- (non officielle)
    #
    # Ce programme est un logiciel libre : vous pouvez le redistribuer
    # ou le modifier selon les termes de la GNU General Public
    # License tels que publiés par la Free Software
    # Foundation : à votre choix, soit la version 3 de la licence,
    # soit une version ultérieure quelle qu'elle soit.
    # 
    # Ce programme est distribué dans l'espoir qu'il sera utile, mais
    # SANS AUCUNE GARANTIE ; sans même la garantie implicite de
    # QUALITÉ MARCHANDE ou D'ADÉQUATION À UNE UTILISATION
    # PARTICULIÈRE. Pour plus de détails, reportez-vous à la GNU
    # General Public License.
    # 
    # Vous devez avoir reçu une copie de la GNU General Public
    # License avec ce programme. Si ce n'est pas le cas, consultez
    # <http://www.gnu.org/licenses/>
    # 
    # ---------------------------------------------------------------------------
    # 
    # Fichier :   autoDetecMonitor.sh
    # Résumé :    Ensemble de fonctions servant à détecter automatiquement si
    #     un moniteur externe est connecté au portable et à prendre des actions
    #     en conséquences.
    #     
    #     Ce programme peut être par exemple éxécuté juste avant le chargement du 
    #     serveur X.
    #     
    # Auteur :    Charles Bouchard-Légaré 
    #             cblegare [dot] atl [at] ntis [dot] ca
    # 
    # ---------------------------------------------------------------------------
    
    # --- Configuration
    
    # Chaîne à rechercher dans le rapport de xrandr
    CONNECTED_STRING="CRT1 connected"
    
    # XOrg fichier de configuration pour affichage à écran double
    XORG_CONF_DUAL="/etc/X11/xorg.conf.dual"
    # XOrg fichier de configuration pour affichage à écran simple
    XORG_CONF_MONO="/etc/X11/xorg.conf.mono"
    # XOrg fichier de configuration pour affichage sûr
    XORG_CONF_FAILSAFE="/etc/X11/xorg.conf"
    # XOrg fichier de configuration actif
    XORG_CONF="/etc/X11/xorg.conf"
    
    # Commande à éxécuter si un moniteur est trouvé
    COMMAND_IF_MONITOR_IS_CONNECTED="cp $XORG_CONF_DUAL $XORG_CONF"
    #COMMAND_IF_MONITOR_IS_CONNECTED="xrandr --output LVDS1 --off --output VGA1 --mode 1680x1050 --pos 0x0 --rotate normal"
    #Commande à éxécuter si aucun moniteur n'est trouvé
    COMMAND_IF_MONITOR_IS_NOT_CONNECTED="cp $XORG_CONF_MONO $XORG_CONF"
    # Commande par défaut
    COMMAND_DEFAULT="cp $XORG_CONF_FAILSAFE $XORG_CONF"
    
    
    # ---------------------------------------------------------------------------
    
    # --- Script
    CRT=`xrandr | grep "$CONNECTED_STRING"`
    if [ "x${CRT}x" != "xx" ]; then
        if [ -f $XORG_CONF_DUAL ]; then
            $COMMAND_IF_MONITOR_IS_CONNECTED
        else
            $COMMAND_DEFAULT
        fi
    else
        if [ -f $XORG_CONF_MONO ]; then
            $COMMAND_IF_MONITOR_IS_NOT_CONNECTED
        else
            $COMMAND_DEFAULT
        fi
    fi
    
    exit $?
  14. Changez la ligne

    CONNECTED_STRING="CRT1 connected"

    pour être conséquent avec celle que vous avez notée à l'étape 11

  15. Changez d'autres lignes si vous savez ce que vous faites

  16. Enregistrez ce script à un endroit que vous jugerez intelligent (suggestions svp !)  Chez moi c'est au /home/maneithel/Local/bin/autoDetectMonitor.sh

  17. Rendez-le éxécutable, par exemple, chez moi :

    chmod +x /home/maneithel/Local/bin/autoDetectMonitor.sh
  18. Là j'ai beosin d'aide.  Le but est de faire lancer ce script AVANT votre écran de login (Gdm ou Kdm dans mon cas).  Pour l'instant, j'ai placé la ligne suivante au début du fichier /etc/kde4/kdm/Xsetup

    source /home/maneithel/Local/bin/autoDetectMonitor.sh

    C'est surtout là que j'ai besoin de suggestions pour utiliser les pratiques les plus saines possible !

  19. Voilà !

Pour l'utilisez, voyez simplement à ce que votre écran ne soit pas branché quand vous démarrez l'ordinateur et que vous ne voulez pas le double écran et inversement si vous le voulez.

J'attends vos idées pour améliorer cette petite solution big_smile

#5 Re : -1 »  Adapter dynamiquement l'affichage dual screen (début de solution !) » Le 07/09/2012, à 01:00

Maneithel
Réponses : 2

Ben... tu peux configurer avec amdcccle, mais il me dit devoir redémarrer (déconnecter suffit...)

#6 -1 »  Aidez-moi à Ubuntifier mon Windows ! » Le 17/07/2012, à 06:12

Maneithel
Réponses : 21

Salut à tous !

J'ai un nouvel emploi d'étudiant.  Je suis programmeur et mon employeur est Microsoft mur à mur.  Je programme avec Visual Studio en C#.net, gère mes versions avec SourceSafe, mes courriels avec Outlook, ma messagerie avec Linc, mes bases de données avec MSSQL: tout, tout tout !  Peut-être que même la machine à café est MS wink.   J'ose à peine imaginer la facture pour toutes ces licences...

J'ai beaucoup pleuré au début... sad  Mais sachant que je ne peux rien y faire (pour l'instant tongue), je dois m'adapter.  Même si je suis contraint pour certains logiciels, je reste admin de mon poste de travail big_smile, me permettant de modifier à toutes les sauces mon environnement.

Cette discussion s'adresse donc principalement aux pauvres comme moi qui doivent composer avec MS et à ceux qui l'ont fait dans le passé.  Vous utilisez Cygwin ? Un autre explorateur de fichiers ? une sorte de Conky ? Vous avez installé KDE sur votre Win ?  Quelle console ?  Dites-moi tout smile

#7 Re : -1 »  Aidez-moi à Ubuntifier mon Windows ! » Le 17/07/2012, à 16:49

Maneithel
Réponses : 21
kironux a écrit :

Salut,

Virtualisation d'Ubuntu, puis plein écran dessus :-°

Malheureusement, je dois quand même pouvoir utiliser le bureau windows.  Une virtualisation n'est pas une option pour moi.

ssdg a écrit :

J'utilise VirtualWin sous windows pour gérer le multi bureau. (c'est pas super génial, mais ça peux aller)
Si tu as besoin d'un terminal qui tiens la route: Cygwin.

Merci pour l'info !  Je vais jeter un coup d'oeil à ce VirtualWin !  Pour Cygwin, c'est un incontournable wink.

lawl a écrit :

Moi j'assume et je le vie bien c'est tout...
J'ai bcp apprit sur window et en dehors de la licence on raconte pas mal de connerie sur ce système qui est plus ouvert que certain le dise.

Oh, je ne suis pas en train de troller Windows !  Mais comme dit M Torvald : «My fingers know what they know, and aren't changing.» .  J'essaie simplement de retrouver ma productivité dans cet environnement.  Et puisque que je ne le connais pas bien, je cherche quelques conseil wink.  Je pense que le meilleur exemple c'est CMD et Notepad.  C'est pas le klondike !  Mais avec certains soft comme Console2 et Notepad++, c'est déjà nettement mieux.

Pour l'heure je cherche principalement un meilleur explorateur de fichier...

#8 Re : -1 »  Aidez-moi à Ubuntifier mon Windows ! » Le 04/09/2012, à 18:40

Maneithel
Réponses : 21

Merci tout le monde pour vos idées !

J'ai finalement fait un heureux mélange de Cygwin, Console2 et AutoHotKey. J'ai aussi essayé KDE pour Windows, mais sans grande satisfaction... Je vous achemine mes configs et scripts sous peu big_smile

#9 -1 »  Refaisons la doc de Kontact et ses composantes ! » Le 01/05/2012, à 01:28

Maneithel
Réponses : 13

Salut !

Suite à une tentative de retour à Kontact après avoir utilisé Thunderbird pendant un certain temps, je me suis rendu compte que bien des éléments de la doc sont désuet voir totalement absents.  Je n'ai jamais beaucoup contribué à la doc de ubuntu-fr, mais il n'est jamais trop tard pour commencer big_smile

Je propose donc de rassembler ici des éléments pertinents d'informations, des contributeurs motivés et des demandes spécifiques clairement formulées !

Je me suis inscrit à la wiki/liste_discussion de la coordination.

Nous parlons ici de revoir l'entrée du wiki de kontact, mais surtout de ses composantes (en priorisant les composantes de base) (désolé pour le look, on ne peut mettre une balise doc dans une balise de liste) :

Principales
kmail
kaddressbook
korganizer

Optionnelles
knotes
knode
akregator
ktimetracker
kalarm
kjots

Je suis donc partant pour apporter ma contribution dans ce projet monstre, mais tel que formulé dans ma question sur KAddressBook ici, je ne suis pas encore un grand connaisseur et j'ai besoin d'aide !

En attendant de rassembler toutes les informations requises, je me met à la lecture des différents standards et tutoriels sur la rédaction de doc.  Je vous invite cordialement à fournir tout ce que vous savez sur le sujet !!!

#10 Re : -1 »  Refaisons la doc de Kontact et ses composantes ! » Le 01/05/2012, à 06:50

Maneithel
Réponses : 13

Bonjour !

xabilon a écrit :

En tant que rédacteur de la plupart des pages de doc concernant Kontact, mais n'ayant plus le temps de m'en occuper, je ne peux qu'appuyer ton projet.

J'ai en effet souvenir d'avoir beaucoup lu de docs où tu participas.  Continue de suivre le dossier au cas où tu aurais de bons conseils sans mettre le temps de jadis.  Je suis sûr qu'on en aura besoin tôt ou tard smile.

xabilon a écrit :

Ça n'a pas à être si monstrueux comme travail, il faut surtout actualiser les images, ainsi que les fonctionnalités ayant changé.

J'ai justement commencé à prendre des screen shots.  J'en ai une vingtaine desquels sélectionner qui sont recevables smile.

xabilon a écrit :

Et tu as oublié un des composants essentiels de la suite Kontact sur KDE4, et qui n'a pas encore de page de doc : Akonadi

Je n'ai pas oublié, t'inquiète smile.  En fait, je commence tout juste à m'y frotter.  Je connais très mal Akonadi et je débute à l'apprivoiser.  Je ne suis pas un habitué du développement KDE et je trouve que souvent la doc est éparse et un peu opaque.  Je suis doublement intéressé étant donné que je veux mettre à l'essai un filtre de spam de mon cru.  Akonadi donc est au coeur de mes plans d'exploration (et donc de rédaction: ça sert aussi de pense-bête la doc tongue) mais je ne pense pas pouvoir m'y lancer avant quelques expérimentations.

À court terme, j'hésite sur une chose :

J'ai déjà peiné à trouvé de la documentation sur des versions antérieures de certains logiciels, alors je préfère laisser l'ancienne doc disponible.  Qu'est-ce qui est préconisé de faire dans ce cas, c'est-à-dire dans le cas où on documente deux versions distinctes d'un même logiciel ?

Merci de l'appui big_smile

#11 Re : -1 »  Refaisons la doc de Kontact et ses composantes ! » Le 01/05/2012, à 22:11

Maneithel
Réponses : 13
AGui a écrit :

Bonne initiative. J'ai un peu de temps en ce moment, je veux bien donner un coup de main. La plupart des informations à jour que tu trouveras sur Kontact est en anglais par contre. J'espère que c'est pas un problème pour toi.

Youpi ! Un coup de main !  Pour l'anglais, ce n'est pas un problème.  Je pense même traduire notre boulot dans la langue de Shakespeare en temps.  À mon avis, ne pas parler anglais en bossant en TI en Amérique du Nord, c'est un suicide professionnel...

AGui a écrit :

Maneithel, si tu veux comprendre le fonctionnement de Akonadi, tu peux lire ce post de blog. On parle aussi de Kmail 2 sur ce sujet, qui contient pas mal d'informations sur son fonctionnement.

J'ai lu l'article et je parcours la discussion.  C'est trèèès pertinent big_smile, merci !

xabilon a écrit :

Chaque composant (Kmail, Kaddressbook ...) doit parler uniquement de lui-même.
La config des "informations personnelles", communes à Kontact, Kopete ... peut être traitée sur une page à part

Je suis d'accord.  Je vais commencer un brouillon ici : utilisateurs/maneithel/workspace-Kontact

xabilon a écrit :

Depuis KDE4, les différents composants de Kontact ont aussi évolué, notamment dans leur utilisation ou pas de Akonadi ; ça ne change pas grand chose dans l'utilisation, mais la configuration des comptes mail, par exemple, est légèrement différente sur Kubuntu 10.04 et sur Kubuntu 12.04

Je vais tâcher de laisser la doc indépendante d'Akonadi (ou pas Akonadi) quand ce sera possible.

Je devrais bientôt commencer à commettre certaines modifications.

#12 Re : -1 »  Refaisons la doc de Kontact et ses composantes ! » Le 17/05/2012, à 14:43

Maneithel
Réponses : 13

Salut !

J'ai une version bêta de documentation de Kontact : utilisateurs/maneithel/workspace-kontact .  C'est assez minimaliste, mais, étant donné que les documentations respectives de chacunes des composantes doit avoir sa page propre, cette page ne deviendra probablement jamais énorme.  Quoi qu'il en soit, des contributions sont les bienvenues smile

J'ai une version pré-alpha (vide, donc wink )
de KMail : utilisateurs/maneithel/workspace-kmail
de KAddressbook : utilisateurs/maneithel/workspace-kaddressbook
et de Akonadi : utilisateurs/maneithel/workspace-akonadi

J'ai une préférence personnelle à me lancer d'abord dans Akonadi. 
Par contre, j'ai déjà presque toutes les captures d'écran dont on pourrait avoir besoin pour la suite entière, prises avec le look par défaut de Kubuntu 12.04.  Je vais les déposer dans les réserves médias de la documentation en essayant de leur donner des noms parlants,mais pas avant quelques heures puisque je suis au travail.

Quand nous aurons complété ces pages à un niveau suffisant, je consulterai les doyens de la doc via la mailing list pour penser à leur déploiement après validation.  On fera attention de ne pas retirer la doc actuelle qui concerne des logiciels encore supportés.  Je suppose qu'on pourrait déplacer les pages désuettes vers une section dédiée (pour les amateurs de matériel vintage wink ).

Voilà, ce sont mes nouvelles pour l'heure !  Bonne journée smile

EDIT : Remarquez que toutes les pages concernées ici sont accessibles via la page utilisateurs/maneithel/workspace-kontact, voir la section Composants

#13 Re : -1 »  Refaisons la doc de Kontact et ses composantes ! » Le 21/05/2012, à 05:55

Maneithel
Réponses : 13

Salut !

xabilon a écrit :

Ça suit son chemin, et ça m'a l'air bien

Merci !  On continue lentement mais sûrement.

abecidofugy a écrit :

EDIT : excusez-moi cette question idiote, mais ça ne serait pas mieux se penser à l'aide fournie par la touche F1 des logiciels ? Ça marche comment le backport d'une doc d'un wiki vers la doc du logiciel ? Autant que ce qui est fait pour Kontact soit fait pour tous les utilisateurs de KDE, non ?

Sous toute réserve, à ce que j'en sache, si la documentation originale en anglais existe, ça relève de la traduction KDE ( mailing list : kde-francophone@kde.org ).  Il est possible qu'il te manque des paquets de documentation, mais certaines sont simplement manquantes.  Il est possible de créer de la doc ( quelques détails ici ).  Pour recycler la doc d'ici, faudra voir si le standard KDE est compatible avec le BBcode de dokuwiki et si les licences des documentations respectives nous le permettent aussi.  C'est une foutue bonne idée, à mon avis smile

#14 -1 »  Comment avoir une utilisation saine et propre d'Akonadi et Kontact ? » Le 30/04/2012, à 21:59

Maneithel
Réponses : 3

Bonjour !

La session d'université étant terminée, on se lance dans le ménage de son poste de travail !  J'ai, comme sûrement beaucoup parmi vous, de 3 à 4 adresses courriel à gérer et j'utilisais Thunderbird pour ce faire.  J'avais envie de revenir à mes premières amours, alors je me suis dit que j'allais utiliser Kontact pour centraliser et tout gérer (courriels, contacts, etc.)

Or, je ne suis pas sûr que comment bien faire la chose.  En effet, je traine ma partition /home depuis belle lurette et ce n'a pas toujours été un OS basé ubuntu ou même basé sur debian qui a géré mes choses.  J'ai donc un peu de tout et de n'importe quoi.  Je suis intéressé à bien construire mes ressources Akonadi et je ne sais pas comment commencer.  D'ailleurs, les documentations de KAddressBook ont été effacés (pas la documentation de Ubuntu Fr, mais la documentation officielle) ?!

Par exemple, je vais dans Kontact->KAddressBook->Ajouter un carnet d'adresses et j'ai 9 choix différents :

  • Carnet d'adresses KDE (traditionnel)

  • Comptes KDE

  • Contacts personnels

  • Dossier VCard

  • Fichier VCard

  • Knut

  • Ressources de logiciel de collaboration DAV

  • Serveur de travail en collaboration Kolab

  • Serveur de travail en collaboration Open-Xchange

Quelle est la différence entre chacun ? Lequel choisir ?

Aussi, où sont mes contact de Thunderbird ?  J'ai trouvé un peu de matériel datant de je ne sais combien d'années sous ~/.local/share/contacts/ mais rien de bien complet.  Je suis allé voir au ~/.kde/share/apps/kabc/std.vcf mais chaque fichier qui s'y trouve est vide.  Je suis allé voir dans la documentation Ubuntu Fr de KAddressBook, mais tout semble assez désuet..

En clair, je cherche un à monter une configuration solide et propre pour mes informations personnelles et je me bute à des documentations absentes ou désuètes.  Avez-vous une solution ?

#15 Re : -1 »  Comment avoir une utilisation saine et propre d'Akonadi et Kontact ? » Le 01/05/2012, à 01:29

Maneithel
Réponses : 3

Ben franchement, je suis partant !

En fait, je suis partant de rassembler ce que je trouverai à gauche et à droite.  Je continue de chercher...

en passant, petit coup d'oeil part ici !

#16 Re : -1 »  retrouver une application [RESOLU] » Le 27/04/2012, à 00:04

Maneithel
Réponses : 4

Bonjour,

Si tu connais le nom de ton application (le nom du fichier éxécutable), essaie en console :

locate le_nom_de_l_executable

Pour avoir une réponse plus précise, par contre, je te recommande de formuler une question plus précise.

Bonne chance !

#17 Re : -1 »  retrouver une application [RESOLU] » Le 27/04/2012, à 18:33

Maneithel
Réponses : 4

Tant mieux !

C'est bien d'avoir écrit

tcheip a écrit :

Problème résolu

mais le mieux, c'est d'éditer le titre de ton message d'origine pour y ajouter [RÉSOLU].

à plus !

#18 Re : -1 »  petit probleme » Le 27/04/2012, à 00:00

Maneithel
Réponses : 1

Salut !

Je n'ai aucune idée de la solution à ton problème.  mais je peux t'aider à trouver la réponse.

D'abord, Donne un titre parlant à ta discussion.  Ici, «petit problème» ne donne aucun indice sur ton problème et peu de gens viendront voir.  Aussi, situe mieux ton auditoire.  Je veux dire, de la manière que tu a formulé ta question, quelqu'un pourrait très bien avoir la réponse mais ne pas faire le lien avec ta question.  Ce n'est pas très clair, à mon avis.  Finalement, fait bien attention de ponctuer tes phrases (pour faciliter la compréhension), de bien orthographier tes mots et si tu utilises des commandes, pense à te servir des balises de code et de citations.  Tu trouveras des guides pour t'aider à mieux rédiger tes question sur la page d'accueil du forum. 

Mon courage !

#19 -1 »  [RÉSOLU]C++ Instancier un classe comprenant un membre static » Le 24/04/2012, à 23:39

Maneithel
Réponses : 4

Bonjour à tous !

Je suis en train d'améliorer mon lot d'outils et j'ai pensé me faire une classe Singleton.  J'ai suivi le tutoriel ici et je n'arrive pas à instancier ma classe.  J'ai les erreurs suivantes :

main.o: In function `cbl::Singleton<cbl::LonelyClass>::getInstance()':
/home/charles/Workspace/cplusplus/projets/dev_outil_debug-build-desktop/../../libs/libcbl-shared/pattern.hpp:18: undefined reference to `cbl::Singleton<cbl::LonelyClass>::m_instance'
/home/charles/Workspace/cplusplus/projets/dev_outil_debug-build-desktop/../../libs/libcbl-shared/pattern.hpp:19: undefined reference to `cbl::Singleton<cbl::LonelyClass>::m_instance'
/home/charles/Workspace/cplusplus/projets/dev_outil_debug-build-desktop/../../libs/libcbl-shared/pattern.hpp:20: undefined reference to `cbl::Singleton<cbl::LonelyClass>::m_instance'
main.o: In function `cbl::Singleton<cbl::LonelyClass>::kill()':
/home/charles/Workspace/cplusplus/projets/dev_outil_debug-build-desktop/../../libs/libcbl-shared/pattern.hpp:22: undefined reference to `cbl::Singleton<cbl::LonelyClass>::m_instance'
/home/charles/Workspace/cplusplus/projets/dev_outil_debug-build-desktop/../../libs/libcbl-shared/pattern.hpp:23: undefined reference to `cbl::Singleton<cbl::LonelyClass>::m_instance'
main.o:/home/charles/Workspace/cplusplus/projets/dev_outil_debug-build-desktop/../../libs/libcbl-shared/pattern.hpp:24: more undefined references to `cbl::Singleton<cbl::LonelyClass>::m_instance' follow
collect2: ld a retourné 1 code d'état d'exécution

J'ai rassemblé pour vous un code minimal :

pattern.hpp:

#ifndef PATTERN_HPP
#define PATTERN_HPP

#include "libcbl-shared_global.h"

using namespace std;
namespace cbl{

template <typename T> class LIBCBLSHAREDSHARED_EXPORT Singleton
{
/*  Use by declaring a subclass, i.e.
 *    class UniqueObject : public Singleton<UniqueObject>{};
 */
public:
  static T *getInstance(){
    if( m_instance == NULL )
      m_instance = new T;
    return ( static_cast<T*> (m_instance) );
  }

  static void kill(){
    if( m_instance != NULL ){
      delete m_instance;
      m_instance = NULL;
    }
  }

protected:
  Singleton (){}
  ~Singleton(){}

private:
  static T * m_instance;
};  // class Singleton

class LIBCBLSHAREDSHARED_EXPORT LonelyClass
    : public Singleton<LonelyClass>
{
  friend class Singleton<LonelyClass>;

private:
  LonelyClass(){}
  ~LonelyClass(){}

};   // class LonelyClass

}   // namespace cbl
#endif // PATTERN_HPP

main.cpp :

#include <pattern.hpp>
using namespace cbl;
int main()
{
  LonelyClass *fh;
  fh = LonelyClass::getInstance();
  fh->kill();
  return 0;
}

Avez-vous un indice ?

EDIT:
cette discussion portait le nom
Difficulté à instancier un Singleton (motif de conception) c++
Changé pour mieux représenter le problème.  La solution est au troisième message.

#20 Re : -1 »  [RÉSOLU]C++ Instancier un classe comprenant un membre static » Le 25/04/2012, à 18:06

Maneithel
Réponses : 4

Bonjour!

Ce fichier contient des macros et des commandes de préprocesseur utilisés par QMake pour générer ces méta-objets.

Pour reproduire, il suffit de retirer les macros LIBCBLSHAREDSHARED_EXPORT et le fichier libcbl-shared et de tout mettre dans un même projet (voir même fichier),

En attendant, voici la solution !

La classe Singleton contient un attribut statique m_instance.  Les attributs statiques doivent être initialisé pour pouvoir permettre l'instanciation.  voici donc le résultat complet, déconnecté des macros utilisés par QMake pour lier des bibliothèques partagées.

pattern.hpp :

#ifndef PATTERN_HPP
#define PATTERN_HPP

template <typename T> class Singleton
{
public:
  static T *getInstance(){
    if( m_instance == NULL )
      m_instance = new T;
    return ( static_cast<T*> (m_instance) );
  }

  static void kill(){
    if( m_instance != NULL ){
      delete m_instance;
      m_instance = NULL;
    }
  }

protected:
  Singleton (){}
  ~Singleton(){}

private:
  static T * m_instance;
};  // class Singleton

////////
// LA SOLUTION SE TROUVE DANS LES DEUX LIGNES SUIVANTES
template <typename T>
T *Singleton<T>::m_instance = NULL;

// EXEMPLE DE CLASSE QUI NE POURRA ÊTRE INSTANCIÉE QU'UNE SEULE FOIS
// UN GESTIONNAIRE D'ACCÈS À UNE BASE DE DONNÉES EST
// UN BON EXEMPLE OÙ UN SINGLETON EST UN MOTIF DE CONCEPTION UTILE

class LonelyClass
    : public Singleton<LonelyClass>
{
  friend class Singleton<LonelyClass>;

private:
  LonelyClass(){}
  ~LonelyClass(){}

};   // class LonelyClass

#endif // PATTERN_HPP

main.cpp

#include "pattern.hpp"

int main()
{
  LonelyClass *fh;
  fh = LonelyClass::getInstance();
// traitements quelconques
  fh->kill();
  return 0;
}

Merci pour votre temps !

#21 Re : -1 »  [RÉSOLU]C++ Instancier un classe comprenant un membre static » Le 26/04/2012, à 02:31

Maneithel
Réponses : 4

Hey, c'est une bonne idée ! merci smile

#22 Re : -1 »  Que faire des sources d'un paquet ? » Le 22/04/2012, à 23:09

Maneithel
Réponses : 3

Il y a quelques raisons pour que tu veuilles conserver les sources :
- Pouvoir les réinstaller offline
- Les collectionner comme des timbres ou de la monnaie.

Sinon, tu peux effacer smile

#23 Re : -1 »  Que faire des sources d'un paquet ? » Le 24/04/2012, à 20:57

Maneithel
Réponses : 3

Résolu en titre  ? Merci smile

#24 -1 »  IA, modèle de Markov » Le 20/04/2012, à 00:07

Maneithel
Réponses : 0

Bonjour à tous !

Je bosse sur un modèle de Markov caché.  Typiquement, je dois implémenter l'algorithme Forward qui permet d'évaluer la probabilité d'avoir une certaine observation sachant un modèle.

Cet algo n'est pas particulièrement compliqué à la base.  Or, je dois en utiliser une version modifiée.

Mes observations sont des chaînes de caractères.  Elles sont altérées vis-à-vis mon modèle abstrait (c'est normal, sinon je ne ferais pas un HMM wink ).  Ainsi, je dois prendre pour acquis que certaines observations que ne peux pas faire existent.

J'ai trouvé un papier qui explique comment gérer cette situation.  Mais... je n'y comprends pas grand chose...  Je saisi bien le principe derrière l'algorithme dynamique Forward, mais cette version me perd.

Pour y jeter un coup d'oeil, un pdf disponible ici : http://www.google.fr/url?sa=t&rct=j&q=h … Tg&cad=rja

Le principe est qu'on constitue le vecteur des états cachés avec environ 3 états par caractère du modèle abstrait : insertion, correspondance, effacement.

Traditionnellement, on itère sur les caractères observés et sur le nombre d'états cachés pour sommer notre résultat partiel, comme dans le code C suivant :

void Forward(HMM *phmm, int T, int *O, double **alpha, double *pprob)
{
        int     i, j;   /* state indices */
        int     t;      /* time index */
 
        double sum;     /* partial sum */
 
        /* 1. Initialization */
 
        for (i = 1; i <= phmm->N; i++)
                alpha[1][i] = phmm->pi[i]* phmm->B[i][O[1]];
 
        /* 2. Induction */
 
        for (t = 1; t < T; t++) {
                for (j = 1; j <= phmm->N; j++) {
                        sum = 0.0;
                        for (i = 1; i <= phmm->N; i++)
                                sum += alpha[t][i]* (phmm->A[i][j]);
 
                        alpha[t+1][j] = sum*(phmm->B[j][O[t+1]]);
                }
        }
 
        /* 3. Termination */
        *pprob = 0.0;
        for (i = 1; i <= phmm->N; i++)
                *pprob += alpha[T][i];
 
}

où le modèle de Markov (phmm dans le code précédent) contient A := la matrice stochastique des transitions, B:= la matrice stochastique des émission et pi:= le vecteur de probabilité initial.

Dans la version spécialisée, je ne me figure pas bien la différence, même simplement la forme de la variable alpha...

Mon problème à proprement parler, c'est que je n'arrive pas à interpréter l'algo présenté dans le pdf (ci-dessus).  J'ai de la difficulté à associer la version générale avec cette version spécialisée. 

J'étais sur le point de simplement abandonner ce volet de mon projet, mais je me suis dit que peut-être un gros cerveau sur les forums de Ubuntu-fr serait en mesure de me donner un indice wink.  J'aimerais vraiment intégrer un modèle de Markov dans mon filtreur de spam, mais je commence à désespérer de l'implémenter à temps...

Je suis preneur de tout coup de main !