[petsc-dev] wrong makefile variables?

Barry Smith bsmith at mcs.anl.gov
Sat Oct 16 14:21:32 CDT 2010


  So all you need is a single variable 

PETSC_LIB_BASIC = -lpetsc 

or 

PETSC_LIB_BASIC = -lpetscts .... -lpetscsys

?
I'll put that in today if that is what you need.

   Barry


On Oct 16, 2010, at 1:34 PM, Lisandro Dalcin wrote:

> On 16 October 2010 19:17, Barry Smith <bsmith at mcs.anl.gov> wrote:
>> 
>>  Maybe if you told/showed me exactly how you use it we can come up with the optimal set of variables you want?
>> 
> 
> Take a look here to what I'm currently using:
> 
> http://code.google.com/p/petsc4py/source/browse/conf/core/confcore.py#144
> 
> I'm not saying that this is optimal, I've always used what PETSc provides.
> 
>>   Do you want a flag that says single library or multiple libraries?
>> 
> 
> Perhaps that could work, but...
> 
>>   Do you want a variable with the list of the PETSc libraries?
>> 
> 
> That's what I was used to get with PETSC_LIB_BASIC. That variable
> expanded to "-lpetsc" for single-lib builds, and "-lpetscts
> -lpetscsnes ..." for the multi-lib case.
> 
>>   Something else?
>> 
> 
> If you could provide the correct list of PETSc libs in
> PETSC_LIB_BASIC, that would be nice, because my code would continue
> working with previous 3.0.0 and 3.1 releases.
> 
> 
>>   Barry
>> 
>> On Oct 16, 2010, at 9:44 AM, Lisandro Dalcin wrote:
>> 
>>> On 16 October 2010 16:23, Barry Smith <bsmith at mcs.anl.gov> wrote:
>>>> 
>>>> On Oct 16, 2010, at 3:43 AM, Lisandro Dalcin wrote:
>>>> 
>>>>> It seems that after changes to BuildSystem, the makefile variables
>>>>> PETSC_LIB_BASIC and PETSC_EXTERNAL_LIB_BASIC are not properly set for
>>>>> single-library builds.
>>>> 
>>>>   This is a change.  ./configure now generates PETSC_EXTERNAL_LIB_BASIC  and PETSC_LIB_BASIC is never used
>>>> 
>>>>  Barry
>>>> 
>>> 
>>> How should I figure if PETSc is using single vs. multiple library
>>> builds (remember petsc4py inspect makefile variables to get PETSc
>>> stuff)?
>>> 
>>> Any chance you could still generate the correct PETSC_LIB_BASIC, even
>>> if core PETSc does not use it?
>>> 
>>>>> 
>>>>> A few days ago we had:
>>>>> 
>>>>> $ grep _BASIC $PETSC_ARCH/conf/petscvariables
>>>>> PETSC_LIB_BASIC = -lpetsc
>>>>> PETSC_CONTRIB_BASIC = -lpetsc
>>>>> PETSC_SNES_LIB_BASIC = -lpetsc
>>>>> PETSC_KSP_LIB_BASIC = -lpetsc
>>>>> PETSC_MAT_LIB_BASIC = -lpetsc
>>>>> PETSC_VEC_LIB_BASIC = -lpetsc
>>>>> PETSC_DM_LIB_BASIC = -lpetsc
>>>>> PETSC_TS_LIB_BASIC = -lpetsc
>>>>> PETSC_SYS_LIB_BASIC = -lpetsc
>>>>> 
>>>>> but now:
>>>>> 
>>>>> $ grep _BASIC $PETSC_ARCH/conf/petscvariables
>>>>> SL_LINKER_LIBS = ${PETSC_EXTERNAL_LIB_BASIC}
>>>>> PETSC_EXTERNAL_LIB_BASIC = -lX11 -llapack -lblas -lm
>>>>> -Wl,-rpath,/usr/lib64/mpich2 -L/usr/lib64/mpich2
>>>>> -Wl,-rpath,/usr/lib/gcc/x86_64-redhat-linux/4.4.1
>>>>> -L/usr/lib/gcc/x86_64-redhat-linux/4.4.1 -ldl -lmpich -lopa -lpthread
>>>>> -lrt -lgcc_s -lmpichf90 -lgfortran -lm -lm -ldl -lmpich -lopa
>>>>> -lpthread -lrt -lgcc_s -ldl
>>>>> 
>>>>> 
>>>>> Could any of you check and fix this?
>>>>> 
>>>>> --
>>>>> Lisandro Dalcin
>>>>> ---------------
>>>>> CIMEC (INTEC/CONICET-UNL)
>>>>> Predio CONICET-Santa Fe
>>>>> Colectora RN 168 Km 472, Paraje El Pozo
>>>>> Tel: +54-342-4511594 (ext 1011)
>>>>> Tel/Fax: +54-342-4511169
>>>> 
>>>> 
>>> 
>>> 
>>> 
>>> --
>>> Lisandro Dalcin
>>> ---------------
>>> CIMEC (INTEC/CONICET-UNL)
>>> Predio CONICET-Santa Fe
>>> Colectora RN 168 Km 472, Paraje El Pozo
>>> Tel: +54-342-4511594 (ext 1011)
>>> Tel/Fax: +54-342-4511169
>> 
>> 
> 
> 
> 
> -- 
> Lisandro Dalcin
> ---------------
> CIMEC (INTEC/CONICET-UNL)
> Predio CONICET-Santa Fe
> Colectora RN 168 Km 472, Paraje El Pozo
> Tel: +54-342-4511594 (ext 1011)
> Tel/Fax: +54-342-4511169




More information about the petsc-dev mailing list