Skip to content

ecl-include-directory cannot find "ecl/config.h"

The include directory is defined in:

(defun ecl-include-directory ()
  "Finds the directory in which the header files were installed."
  (cond ((and *ecl-include-directory*
              (probe-file (merge-pathnames "ecl/config.h" *ecl-include-directory*)))
         *ecl-include-directory*)
        ((probe-file "SYS:ecl;config.h")
         (setf *ecl-include-directory* (namestring (translate-logical-pathname "SYS:"))))
        ((error "Unable to find include directory"))))

But "SYS" points to the library directory (e.g. /usr/local/lib/ecl-24.5.10) and not to the include directory (/usr/local/include). So checking for "SYS:ecl;config.h" will not succeed in a 'normal' installation, right? Shouldn't it look at "SYS/../../include/ecl"?