We absolutely need configure.log to debug this. All the information about 
what variants were tried and why they failed are listed in configure.log


On Sep 12, 2013, at 10:41 AM, Jose David Bermeol <jberm...@purdue.edu> wrote:

> Hi, now I'm trying to compile Petsc with mkl, not just for BLAS/LAPACK 
> functions, but for all functionalities of mkl. What I did until now is to add 
> the file mkl.py to config/PETSc/packages, with the following code:
> 
> import PETSc.package
> 
> class Configure(PETSc.package.NewPackage):
>  def __init__(self, framework):
>    PETSc.package.NewPackage.__init__(self, framework)
>    self.functions    = ['set_default_options']
>    self.includes     = ['mkl.h']
>    self.liblist      = [['libmkl_intel_lp64.so', 'libmkl_intel_thread.so', 
> 'libmkl_core.so']]
>    self.double       = 1
>    self.complex      = 1
>    #self.worksonWindows   = 1
>    #self.downloadonWindows= 1
>    return
> 
> I base the implementation in papi.py and SuperLu.py. Then I'run
> 
> ./configure --with-mpi-dir=$MPI_HOME --with-mkl-lib=$MKL_ROOT/lib/intel64 
> --with-mkl-include=$MKL_ROOT/include
> 
> And it throws the following error:
> 
> *******************************************************************************
>         UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log for 
> details):
> -------------------------------------------------------------------------------
> --with-mkl-lib=['PATH/lib/intel64'] and 
> --with-mkl-include=['PATH/include'] did not work
> *******************************************************************************
> 
> the trace in configure.log is not clear, and I'm not sure if the problem is 
> because all the libraries are shared object libraries (.so) and not 
> static(.a). So maybe you have ideas of why this is happening.
> 
> Thanks 
> 
> ----- Original Message -----
> From: "Barry Smith" <bsm...@mcs.anl.gov>
> To: "Jose David Bermeol" <jberm...@purdue.edu>
> Cc: petsc-dev@mcs.anl.gov
> Sent: Wednesday, September 11, 2013 8:27:23 PM
> Subject: Re: [petsc-dev] Extending Petsc
> 
> 
> On Sep 11, 2013, at 5:23 PM, Jose David Bermeol <jberm...@purdue.edu> wrote:
> 
>> So a couple of more question:
>> 
>> 1. My code in Petsc and my package depends on intel mkl, I was thinking to 
>> compile Petsc to use mkl using --with-mkl-dir flag, do I have to add 
>> something in the setupDependencies() method, and because mkl is not in 
>> config.packages how can I do that? 
> 
>   You copy something like superlu.py to mkl.py and edit that.  
> 
>    PETSc automatically loads up all the files in the config/PETSc/packages 
> directory so you don't have to list your new file anywhere in setup 
> dependencies or anything
> 
>> 
>> 2. My package is already installed, so do I have to code the install method?
> 
>    Nope
> 
>> 
>> Thanks 
>> 
>> ----- Original Message -----
>> From: "Barry Smith" <bsm...@mcs.anl.gov>
>> To: "Jose David Bermeol" <jberm...@purdue.edu>
>> Cc: petsc-dev@mcs.anl.gov
>> Sent: Wednesday, September 11, 2013 5:25:36 PM
>> Subject: Re: [petsc-dev] Extending Petsc
>> 
>> 
>>  You need to put a file in config/PETSc/packages   with the name package.py 
>> (name of your package) you can, for example, copy superlu.py and edit it to 
>> match your package. This is the file that will make sure that 
>> PETSC_HAVE_PACKAGE is defined.
>> 
>>  Barry
>> 
>> 
>> 
>> On Sep 11, 2013, at 4:21 PM, Jose David Bermeol <jberm...@purdue.edu> wrote:
>> 
>>> Hi, right now I'm working in add a new solver for seq aij matrices. What I 
>>> have until this point are the following files inside the folder aij/seq/:
>>> 
>>>  - package/       folder with my code
>>>  - package.c      a initial implementation of the solver.
>>>  - makefile       is basically a copy of the make file in superlu, but 
>>> using the name of my package instead of "superlu".
>>> 
>>> Also I add to petscmat.h my solver type. Then I run ./configure with the 
>>> flag --with-package-dir=PATH_TO_PACKAGE. The thing is that when I'm 
>>> compiling the variable PETSC_HAVE_PACKAGE doesn't show up, I guess that 
>>> means the variable is 0 or something else happens, and my code is not going 
>>> to be compile. So if you could give some ideas of why Petsc doesn't compile 
>>> my code.
>>> 
>>> 
>>> Thanks 
>>> 

Reply via email to