[Ecls-list] Conflicting init_ functions when building libraries
Goffioul Michael
goffioul at imec.be
Wed Mar 15 07:42:02 UTC 2006
> Hi,
>
> i just tracked down a problem when building libraries with
> ecl to embed them in a c/c++ binary under linux. My lisp code
> consists of two subsystems living in different directories,
> one of them is foreign code (the cl-ppcre). Accidentaly,
> there are two lisp files with the same name, so that when i
> build either two separate libraries or one combined library,
> one init_... function shadows the other.
> This results in obscure errors: missing symbols or simply
> code that does behave differently than in the interpreted version.
>
> Although renaming one of the files would be an option, i
> don't think that would be feasible if someone gets code
> off-the-shelf or when working with larger systems. Including
> directory components into the initialization function name
> would fix -my- problem, but i don't know if that is a good solution.
>
> I looked into the code in cmp/cmpmain, but i doubt that
> changing init-function-name will be enough.
Try to change the variable si::*init-function-prefix* before compiling
those modules. See the file build/compile.lsp for an example.
Michael.
More information about the ecl-devel
mailing list