[petsc-users] how to rebuild from updated repo

Barry Smith bsmith at mcs.anl.gov
Mon Nov 7 18:34:20 CST 2011


   Hmm, I thinkl this was fixed in petsc-dev, switch to it.

On Nov 7, 2011, at 4:33 PM, Shao-Ching Huang wrote:

> It turns out that the machine I am using has CUDA (nvcc), so petsc
> disables cmake build (apparently even with --with-cuda=0, as long as
> nvcc is detected). Then I noticed this comment: "# Our CMake build
> does not support CUDA at this time" in config/PETSc/Configure.py (line
> 468)
> 
> I tried the same configure options on a different machine that has no
> cuda -- cmake build works as expected.
> 
> Shao-Ching
> 
> On Mon, Nov 7, 2011 at 2:11 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>> 
>>  With petsc-3.2 if you have a recent version of cmake installed on your machine then it does exactly that and if you, for example, change one file the rebuilding of the library is very fast.
>> 
>>   Barry
>> 
>> On Nov 7, 2011, at 2:07 PM, Shao-Ching Huang wrote:
>> 
>>> Thanks guys.
>>> 
>>> I was thinking rebuilding in 5 seconds, if I could reuse most of the
>>> already-built .o files. (Like in a typical makefile scenario -- only
>>> the changed source files are re-compiled). It seems that the petsc
>>> "make" command cleans up all the .o files automatically.
>>> 
>>> I have no problem of rebuilding the whole thing afresh. Actually that
>>> is what I have been doing.
>>> 
>>> Thanks,
>>> 
>>> Shao-Ching
>>> 
>>> On Mon, Nov 7, 2011 at 1:56 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>>>> 
>>>>  If you find that ./configure or the make are taking a huge amount of time you might investigate where the files are stored. If, for example, they are stored on a separate file server it may be most of the time is due to the file server. For example configuring and compiling each take me about 5 minutes on my laptop; on a desktop using a file server might take 1/2 an hour.
>>>> 
>>>>   Barry
>>>> 
>>>> On Nov 7, 2011, at 3:52 PM, Satish Balay wrote:
>>>> 
>>>>> On Mon, 7 Nov 2011, Shao-Ching Huang wrote:
>>>>> 
>>>>>> Hi
>>>>>> 
>>>>>> I downloaded petsc using the "hg clone
>>>>>> http://petsc.cs.iit.edu/petsc/releases/petsc-3.2" method. Now, after
>>>>>> hg pull/update (some files are changed), do I always have to build
>>>>>> from scratch (i.e. compiling everything, including the --download-xxx
>>>>>> stuff)? Is there a short cut to rebuild libpetsc.{so,a} when I have no
>>>>>> configuration change?
>>>>> 
>>>>> This is a tricky thing. Generally updates to petsc-3.2 should not
>>>>> require a rerun of configure or a rebuild of all library code - but
>>>>> this is not always true. [sometimes you might have to pull/update
>>>>> BuildSystem and rerun configure - or rebuild externalpackages - as the
>>>>> tarballs for these packages get updated].
>>>>> 
>>>>> For the generaly case - an update of the libraries can be done with:
>>>>> 
>>>>> [for cmake build]
>>>>> make
>>>>> 
>>>>> [for non-cmake build]
>>>>> make ACTION=lib tree
>>>>> 
>>>>> And if a rerun of configure is needed - one can run
>>>>> ./PETSC_ARCH/conf/reconfigure_PETSC_ARCH.py
>>>>> 
>>>>> Satish
>>>> 
>>>> 
>> 
>> 



More information about the petsc-users mailing list