< Back to IRCAM Forum

A propos de "Cleanup lib sources"…

Bonsoir Jean,

Lorsque que, a tort ou a raison, il y a un problème pour charger une librairie, on obtient une erreur logique (erreur-load.png)
Puis, OM propose (Cleanup-lib.png)… Il me parait dangereux d’accepter, non ?

Qu’en est t’il, please ?

Cheers~

………………………………………… jerome

OSX Sierra, OM 6.14 up to date

erreur-load.png

Hello Jerome,

C’est un peu compliqué à expliquer, mais pas dangereux du tout :slight_smile:

Comme tu l’as peut-être remarqué les fichiers sources dans les bibliothèques OM sont un ensemble de fichiers “.lisp” parfois accompagnés de fichiers compilés “.*fasl”: .xfasl sur Mac, .ofasl sur Windows, etc. Les fichiers compilés son optimisés et plus efficaces, donc Lisp/OM va chercher à charger ceux-ci en priorité s’il trouve l’extension correspondant à la plateforme sur laquelle tu te trouves, et chargera les fichiers .lisp en deuxième recours seulement, si il n’y a pas de .*fasl, ou si le .*fasl est reconnu comme plus ancien (donc potentiellement, pas à jour).

Parfois, charger un fichier .*fasl peut être problématique, par exemple si celui-ci a été compilé dans une version de LispWorks (ou de OM) différente de celle dans laquelle tu te trouves (c’est à dire, celle qui a été utilisée pour compiler ton OM!). Dans ce cas là par exemple, la solution est de supprimer le *fasl, de sorte que OM charge le .lisp à la place (OM ne sait pas recompiler un .*fasl, seul LispWorks peut faire ça).

Pour éviter toutes ces complications, la plupart des bibliothèques ne contiennent que les fichiers “.lisp”, pour que OM puisse (a priori) les charger depuis n’importe quelle plateforme et version. Si tu es dans LispWorks, alors tu compileras le *fasl (mais ce n’est est le cas de pratiquement personne).

Par contre, si OM trouve un “.*fasl” (fichier compilé) mais qu’un problème survient lors de son chargement, le message que tu rapportes apparait te proposant de supprimer les *fasl (autrement, je t’aurais dit de le faire à la main ;-).

Encore une fois, ça n’est pas dangereux car les fichiers sources (.lisp) ne sont pas touchés. Mais je reconnais que cela peut prêter à confusion, et vais réfléchir à une autre manière de faire (ou bien une manière “silencieuse” de résoudre ce problème) pour la prochaine mise à jour d’OM.

—Jean

Ce n’est pas compliqué, tu l’expliques bien.

Toutefois, je pense que mettre dans la fenêtre une phrase du type : "This process will only delete .*fasl files (OS oriented LispWorks compiled LISP files) and not affect your .lisp files » serait efficace.
Quelques fois, il arrive que l’on ne peut charger une librairie alors qu’elle n’est pas en cause. La plupart du temps, la télécharger de nouveau puis la ré-installer suffit ! Que pourrait y faire une manière “silencieuse” ? :wink:

……………………………………………… jerome