-
-
Couldn't load subscription status.
- Fork 680
Description
In sage-env, we meanwhile add (more precisely, append) ${SAGE_LOCAL}/include to CPATH, and ${SAGE_LOCAL}/lib to LIBRARY_PATH.
Besides that this is non-portable, or rather a GCC feature, it is not equivalent to adding / prepending -I${SAGE_LOCAL}/include to CPPFLAGS/CFLAGS/CXXFLAGS and -L${SAGE_LOCAL}/lib to LDFLAGS.
First of all, search paths / folders specified on the command line precede all others, and second, those specified through CPATH, LIBRARY_PATH etc. are not necessarily searched before system folders.
This currently leads to problems with e.g. readline and R (which doesn't support configuring with --with-readline=<prefix>, but just =yes or =no), where adding Sage's directories was dropped from spkg-install.
To test this, try for example
$ mkdir -pv /tmp/LOOK_HERE
$ env LIBRARY_PATH=/tmp/LOOK_HERE $CC -print-search-dirs | egrep '^libraries|LOOK_HERE'
# (and/or)
$ env LIBRARY_PATH=/tmp/LOOK_HERE $CC -v -x c /dev/null -o /dev/null 2>&1 | egrep '^LIBRARY_PATH|LOOK_HERE'
where $CC is the compiler / GCC of your choice (e.g. just gcc).
Component: build
Keywords: CPATH LIBRARY_PATH SAGE_LOCAL -I -L sage-env search directories paths
Issue created by migration from https://trac.sagemath.org/ticket/14709