I'm trying to update NumPy to 1.61.1, with some success ... but have come up 
with something odd with respect to the distutils/fcompiler/gnu.py provided 
within NumPy: the "rpath" setting that I fixed a little over 2 years ago has 
reared its ugly head!

The original code at the time was (NumPy 1.11.2):
{{{
-Wl,-rpath="DIR"
}}}
where DIR is the rpath directory (unquoted). These flags are being appended to 
the Fortran build command for linking libraries (technically .so objects).

With some trial and error testing, my change back ~2 years ago fixed this to 
instead be:
{{{
-Wl,-rpath -Wl"DIR"
}}}

The original code is now as of NumPy 1.16.1:
{{{
-Wl,-rpath,DIR
}}}
... note the "," separator and unquoted DIR.

Up until some recent time, my fix worked. Then ... something changed, and the 
now-original code seems to work in my testing: installing NumPy then trying to 
build SciPy & changing this specific line of code between SciPy builds verifies 
the use of "-rpath,DIR" ... or, probably better would be '-rpath,"DIR"' in case 
the DIR has spaces in it.

Since these flags are being passed through to the linker (ld), I have to 
believe that what changed is the acceptable linker arguments for doing rpath.

I know there's been quite a bit of kerfuffle recently about ld64 and using 
xcode's versus MP's actual linker. Maybe this makes a difference? Does the 
rpath argument to the linker depend on which linker is being used? Does the 
linker used depend on the version of OSX? Can we select a single "-rpath" 
argument setting here to use so that it works with all linkers?

I'm hoping others can shed some light here so that I can get NumPy updated & 
properly working for all of the potential linkers we might now use. Thx! - MLD

Reply via email to