On Sun, May 22, 2011 at 10:28 AM, Nils Bruin <nbruin@cecm.sfu.ca> wrote:
I am having some trouble with figuring out the default choices of the
values of some of the paths used by the ECL compiler.

I am sorry you had to waste some time with this because of my late answer.

ECL has two installation modes, one follows the Unix hierarchy with /usr/include, /usr/lib, etc, the other one has everything in the same directory (Logical pathname SYS:), as it is traditional in Windows.

In short, the Unix mode

${prefix}/bin/ecl -> executable
${libdir} = ${prefix}/lib -> shared library
${libdir}/ecl-##.#.# -> ECL's private files
${includedir}/ecl = ${prefix}/include/ecl -> ECL's headers

The relocatable mode

${prefix}/ecl.exe -> executable
${prefix}/ecl/ -> include dir
${prefix}/ -> shared libraries
${prefix}/ -> ECL's private files

The first approach is fixed, hardcoded paths, the second one is the only one in ECL that allows relocation: it finds its executable file and from there it can compute all the rest.

ECL's current logic is designed to detect which of the two is the one we are using, while you were trying to get a mixture of both: do relocation while preserving some Unix structure _outside_ ECL's world. I never felt this was the right approach, since to me relocation is associated to being self-contained. However, feel free to work along this direction if you wish.



Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)