[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