Non, je ne charge que la lib du projet et appelle les fonctions (meme pas de
variable en fait) du projet. Je me suis effectivement demandé s'il n'était
pas nécessaire de déclarer libgsl également, mais alors pourquoi pas la
libc, et toutes les autres ? j'utilise beaucoup printf pour vérifier
l'autre côté ; ça ne pourrait pas marcher.
Merci de vous intéresser à mon problème.
Je pars en voyage pour la journée. Si vous la gentillesse de poursuivre le
fil, ne pourrais vous répondre que demain.
AMn
Pascal Bourguignon wrote:
"card.lemoine@aliceadsl.fr" <card.lemoine@aliceadsl.fr> writes:
Bonjour,
Je vous soumets un problème posé par le comportement nouveau du programme
que je développe depuis des mois mais sur lequel je tourne en rond depuis
trois jours.
Il s'agit d'un développement parallèle en C et en lisp sur une question
de traitement du signal. Il s'agirait de deux développements séparés à
ceci près : l'utilisation d'une bibliothèque commune à l'un et à l'autre,
et qui se développe en même temps que les deux "mains".
Voici un schéma de l'arborescence :
~/projet_C...autotools (configure, make, etc...
~/projet_C/src...main et interfaces utilisateur
~/projet_C/lib...la bibliothèque en question
~/projet_lisp...quelques packages répondant en gros au même schéma que
projet_C/src dont un package pour interfacer les fonctions étrangères
situées dans la bibliothèque.
~/bin
~/lib
~/...
La bibliothèque qui traite en fait les fonctions de plus bas niveau du
projet, utilise évidemment d'autres bibliothèques dont la gsl qui fournit
une partie du bataillon des algorithmes de calcul. Il y a un bon moment
qu'il n'y a plus guère d'évolution de ce côté et pourtant en réorganisant
mes répertoires j'ai fait apparaître un phénomène que je n'arrive pas à
régler :
##########################################################################
:~/...clisp -K full -L french gceler.lisp
*** - FFI::FIND-FOREIGN-FUNCTION: Cannot open library
".../lib/libceler.so":
".../lib/libceler.so: undefined
symbol:gsl_fft_real_wavetable_float_alloc"
##########################################################################
En scrutant le binaire de libceler on trouve bien le symbole en question
qui d'ailleurs n'est pas formellement utilisé par les fonctions et
variables étrangères. De plus la conception est entièrement opaque selon
le modèle Objet aussi loin que le permet le "plain" C.
Merci à ceux qui pourraient me mettre sur la voie.
AMn
Est-on sur que la libgsl est déjà chargée dans clisp?