Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:futur:robo

This is an old revision of the document!


Commit

Nettoyage VTK

Suite à la migration VTK6, mon Metafor démarrait en plus de 6 secondes sur ma machine Ubuntu. Après une petite analyse, je me suis rendu compte que toutes les libs VTK de ma machine étaient chargées en mémoire suite à une opération de link un peu brutale (je linkais avec toutes les libs, c'est-à-dire VTK_LIBRARIES). Comme les libs VTK d'Ubuntu sont très complètes, je me retrouvais avec plus de 300 .so à charger, dont certaines utilisant MPI… J'ai donc pris le temps de nettoyer ça et de sélectionner une à une les libs VTK qu'on utilise réellement.

Seul petit problème (qui m'a pris une petite journée à résoudre): VTK6.2 d'Ubuntu ne charge pas correctement toutes les libs nécesaires à l'utilisation de vtkXYPlotActor et, si on ne linke pas explicitement avec vtkRenderingfreeType*, on se retrouve avec une version dont les fenêtres de courbes sont gelées.

Nettoyage CMake 3.x

J'en ai profité pour gérer correctement les warnings liés aux nouvelles POLICY de CMake. En effet, lorsque CMake change de comportement au cours des versions, les développeurs définissent une nouvelle POLICY qui, par défaut n'est pas définie (et produit un warning) et qui peut valoir OLD (la valeur par défaut - mais qui traduit un comportement qui sera supprimé bientôt) et NEW (le nouveau comportement qui nécessite peut-être une phase de debug des CMakeLists.txt. J'ai donc activé les nouvelles POLICY à NEW et… ça a l'air de marcher.

Autre nettoyage: CMake gère maintenant de manière beaucoup plus tansparente les opérations liées à moc (gestion des signaux/slots pour ceux qui connaissent). J'étais passé à la nouvelle manière de traiter les mocs lors de la migration Qt5 mais cela générait des tas de warnings. Ce problème est maintenant corrigé.

Nettoyage images PNG

Le nouveau Qt détecte et signale des erreurs dans les profils de couleur de certains PNG. J'ai donc passé tous les PNG du repository à travers PngOptimizer. Ca a supprimé tous les warnings et, accessoirement, ça a réduit la taille de quelques fichiers.

Nettoyage macOS

J'ai continué la compilation macOS sur le mac du service (spirou). J'arrive maintenant à tout compiler (j'ai ajouté parasolid, MUMPS, oo_nda). pour fêter ça, j'ai défini un CMake/macos.cmake (config de compilation complète) et CMake/macos-student.cmake (config de compilation sans oo_nda, ni parasolid). J'ai supprimé CMake/OSX-student.cmake qui n'est plus utile.

L'aspect de la fenêtre graphique de metafor était très moche sur Mac dû à un mauvais choix de police de caractère. J'ai donc changé la manière dont les polices de type “monospace” sont choisies. Le rendu est maintenant parfait sur toutes les plateformes (si on utilise Qt 5.2).

boman 2017/04/04 16:35

commit/futur/robo.1491316818.txt.gz · Last modified: 2017/04/04 16:40 by boman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki