On Sep 20, 2010, at 9:12 PM, Kai Germaschewski wrote:

> 
> So the below actually occurs with petsc-3.1, but I believe not much has 
> changed in petsc-dev.
> 
> This is a config crash, which I guess is my own fault, so that's not the real 
> issue:
> 
> TESTING: configureDefaultArch from 
> PETSc.Configure(config/PETSc/Configure.py:461)
> *******************************************************************************
>         CONFIGURATION CRASH  (Please send configure.log to petsc-maint at 
> mcs.anl.gov)
> *******************************************************************************
> [Errno 13] Permission denied: 'conf/petscvariables'  File 
> "./config/configure.py", line 250, in petsc_configure
>     framework.configure(out = sys.stdout)
>   File "/home/kai/src/petsc-3.1/config/BuildSystem/config/framework.py", line 
> 930, in configure
>     child.configure()
>   File "/home/kai/src/petsc-3.1/config/PETSc/Configure.py", line 562, in 
> configure
>     self.executeTest(self.configureDefaultArch)
>   File "/home/kai/src/petsc-3.1/config/BuildSystem/config/base.py", line 97, 
> in executeTest
>     ret = apply(test, args,kargs)
>   File "/home/kai/src/petsc-3.1/config/PETSc/Configure.py", line 464, in 
> configureDefaultArch
>     fd = file(conffile, 'w')
> 
> The reason for the "permission denied" is that I cannot easily install a 
> petsc that I built as a user, as I normally do with all kinds of other 
> software. If I do "sudo make install", it fails with "mpicc not found" 
> (actually, it doesn't fail, it says install complete, but the install then 
> doesn't work). I can work around that by making sure I put the right mpicc 
> into my path as root before I "make install", but it's not as convenient as 
> it could be. autoconf/automake software normally builds libraries as user 
> that can be directly installed without having to be relinked, so I know it's 
> possible to make do without relinking (unless using --disable-fast-install). 
> Another side effect is that apparently I ended up with files owned by root in 
> my home directory, which gave the problem above later.

   This is in theory fixed in petsc-dev. The mpicc was being used to remake the 
shared libraries, but I think we've removed that need so with petsc-dev 

./configure ; make ; sudo make install should work please report any problems.

> 
> A second, not really related issue:
> 
> In my application's build, I use "make getincludedirs / getlinklibs" to 
> figure out how to build with / link with petsc, I suppose this is how it 
> should be done? Unfortunately it doesn't work so well with an installed 
> version of petsc, since the makefile doesn't get installed with the rest of 
> things. Should the makefile get installed, or should I be using another way 
> of figuring out this info?

   Installing a makefile is kind of weird so it is not installed in $PETSC_DIR. 
You can get the values by making a makefile with the two lines 
include ${PETSC_DIR}/conf/variables
include ${PETSC_DIR}/conf/rules
then do make geincludedirs but I admit that is cumbersome.  I guess we could 
copy over the makefile to something like conf/makefile and then you could do 
make getincludedirs -f ${PETSC_DIR}/conf/makefile  Is that a reasonable fix? 
The drawback is that it is not in the same place as in a non-prefix build. 

  Barry







> 
> --Kai
> 
> 
> 
> 
> -- 
> Kai Germaschewski
> Assistant Professor, Dept of Physics / Space Science Center
> University of New Hampshire, Durham, NH 03824
> office: Morse Hall 245E
> phone:  +1-603-862-2912
> fax: +1-603-862-2771
> 


Reply via email to