[petsc-users] [Slepc 3.7.1][macOS] install name is set to build folder instead of prefix

Jose E. Roman jroman at dsic.upv.es
Mon Jul 11 09:53:10 CDT 2016


I cannot reproduce this behaviour. If I do for instance this (on OS X El Capitan):

$ cd ~/tmp
$ ln -s $SLEPC_DIR .
$ cd slepc-3.7.1
$ ./configure
$ make
$ otool -lv $PETSC_ARCH/lib/libslepc.dylib | grep slepc

I don't get a warning, and the output of otool is the same that would result if done on $SLEPC_DIR.
Which warning are you getting?

Jose


> El 11 jul 2016, a las 0:48, Denis Davydov <davydden at gmail.com> escribió:
> 
> Hi Jose,
> 
> so here is what happens. The issue appears when SLEPC_DIR is set to a symlink (the one with “stage below) of a build folder (the one with “private” below). 
> During configure there is a warning that SLEPC_DIR is not the same as current dir (string comparison),
> but one is symlink of another, so all but install_name_tool work. The latter leads to the following values of variables:
> 
> oldname    =/private/var/folders/5k/sqpp24tx3ylds4fgm13pfht00000gn/T/davydden/spack-stage/spack-stage-MziaMV/slepc-3.7.1/installed-arch-darwin-c-opt/lib/libslepc.3.7.dylib
> 
> installName=/private/var/folders/5k/sqpp24tx3ylds4fgm13pfht00000gn/T/davydden/spack-stage/spack-stage-MziaMV/slepc-3.7.1/installed-arch-darwin-c-opt/lib/libslepc.3.7.dylib
> 
> archDir    =/Users/davydden/spack/var/spack/stage/slepc-3.7.1-gimrzhb4mozeus3i2hdmrtjp3tha5pgr/slepc-3.7.1/installed-arch-darwin-c-opt
> 
> installDir =/Users/davydden/spack/opt/spack/darwin-elcapitan-x86_64/clang-7.3.0-apple/slepc-3.7.1-gimrzhb4mozeus3i2hdmrtjp3tha5pgr
> 
> dst        =/Users/davydden/spack/opt/spack/darwin-elcapitan-x86_64/clang-7.3.0-apple/slepc-3.7.1-gimrzhb4mozeus3i2hdmrtjp3tha5pgr/lib/libslepc.3.7.1.dylib
> 
> As you see, installName wasn’t changed from oldname.
> 
> Since the python code rely on SLEPC_DIR be pwd(), i would suggest to through an error instead of the warning to make
> sure that users won’t get in the situation above. Alternative is to make this part of the code more robust.
> 
> When SLEPC_DIR==pwd() the patch you referred works.
> 
> Kind regards,
> Denis 
> 



More information about the petsc-users mailing list