Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Technical discussions | Discussions techniques Méthode rapide pour compiler une applet ?
The latest stable release is the *3.4.0* : How to install it here.
Note: We just switched from BZR to Git on Github! (only to host the code and your future pull requests)
Technical discussions | Discussions techniques

Subjects Author Language Messages Last message
[Locked] Méthode rapide pour compiler une applet ?
nochka85 Français 3 Guest [Read]
19 February 2011 à 08:10

nochka85, Friday 18 February 2011 à 17:54


Subscription date : 29 November 2007
Messages : 7408
Je m'essaie à quelques truc sur une applet et j'ai une petite question :

En fait, j'ai fait çà (repiqué depuis le script de Mav/Mat et adapté à mon install):

CONFIGURE="-Denable-network-monitor=yes -Denable-doncky=yes -Denable-scooby-do=yes -Denable-memenu=yes -Denable-status-notifier=yes -Denable-folders=yes -Denable-disks=yes -Denable-recent-events=yes" && BUILD_DIR="/home/nochka85/cairo-dock_BZR/cairo-dock-plug-ins/build" && rm -rf $BUILD_DIR && mkdir $BUILD_DIR && cd $BUILD_DIR && cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug $CONFIGURE && make clean && make -j $(grep -c ^processor /proc/cpuinfo) && gksudo rm -rf /usr/lib/cairo-dock/* /usr/share/cairo-dock/plug-ins/* && gksudo make install

(en fait, j'ai associé çà au bouton "Compiler" de Geany )

Bref, çà compile bien et je vois bien mes modifs d'actives lorsque je relance le dock ... mais (parce qu'il y a un "mais"), c'est un peu long à compiler pour une simple petite modif sur un seul plugin

Bref, voici la question :

Y'a t'il un moyen de ne compiler QUE le plugin modifié tout en restant compatible avec le script de Mav/Mat ?

matttbe, Friday 18 February 2011 à 18:58


Subscription date : 24 January 2009
Messages : 12573


Si tu ne touches pas aux fichiers CMake, pas besoin de tout nettoyer avant de compiler. Pas besoin de nettoyer le dossier d'un plug-in si tu ne touches qu'à un fichier.

Exemple: Je désire modifier une ligne dans un fichier
  • Si les fichiers de CMake ne sont pas produit, on produit:
    mkdir $BUILD_DIR && cd $BUILD_DIR && cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug $CONFIGURE
  • Mon fichier édité se trouve dans le plug-in Toto, fichier pouet:
    cd Toto/src/ # si on avait utilisé le script juste avant et que les fichiers de CMake avaient déjà été produits, qu'il y avait eu le make et le make install. => sinon cd Toto
    make -j ...
    # make install

Voilà, c'est tout
Mais en gros, tu ne modifies qu'un fichier, tu lances un make dans le même dossier que le fichier et il ne va compiler que les fichiers qui ont besoin d'être recompilé.

Maintenant, si tu modifies un fichier dans data, tu vas dans data et tu lances le make, make install.
Si par contre tu modifies un fichier CMakeLists.txt, alors c'est mieux (ça dépend de la modif en fait) si tu fais le nettoyage dans le dossier courant => si tu modifies le principale, alors tu nettoies tout, si c'est uniquement celui dans le dossier data, tu vires le dossier data, etc. puis tu relances CMake dans le dossier principal, dans le dossier build donc.

Virer le dossier de build, c'est principalement utile si tu modifies des fichiers CMakeLists.txt même si tu pourras remarquer que si tu en modifies, il va relancer la commande cmake mais bon, parfois ça ne fonctionne pas super bien (quand tu changes un fichier de répertoire par exemple, je crois)

nochka85, Friday 18 February 2011 à 23:26


Subscription date : 29 November 2007
Messages : 7408
T'es un chef

Guest, Saturday 19 February 2011 à 08:10

@nochka85 > J'crois qu'on peut l'dire

Technical discussions | Discussions techniques

Subjects Author Language Messages Last message
[Locked] Méthode rapide pour compiler une applet ?
nochka85 Français 3 Guest [Read]
19 February 2011 à 08:10


Glx-Dock / Cairo-Dock List of forums Technical discussions | Discussions techniques Méthode rapide pour compiler une applet ? Top

Online users :

Powered by ElementSpeak © 2007 Adrien Pilleboue, 2009-2013 Matthieu Baerts.
Dock based on CSS Dock Menu (Ndesign) with jQuery. Icons by zgegball
Cairo-Dock is a free software under GNU-GPL3 licence. First stable version created by Fabounet.
Many thanks to TuxFamily for the web Hosting and Mav for the domain name.