[petsc-users] Failed to build Petsc statically linked to MKL for Windows
Satish Balay
balay at mcs.anl.gov
Tue Sep 29 21:02:03 CDT 2020
Glad it works! Thanks for the update.
Satish
On Tue, 29 Sep 2020, Thuc Bui wrote:
> Thank you Satish very much. You are so right in catching this error. My bad!
> Here is the configuration that works for Windows 10 VS 2015 x64 Release
> build, no Fortran compiler, no MPI and links statically to Intel MKL
>
> ./configure --with-cc='win32fe cl' --with-cxx='win32fe cl' --with-fc=0
> --with-openmp --with-debugging=0 --with-mpi=0
> --with-blas-lapack-lib="-L/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows
> /mkl/lib/intel64_win mkl_intel_lp64.lib mkl_core.lib mkl_intel_thread.lib
> libiomp5md.lib"
>
> Many thanks again for your help,
> Thuc
>
> -----Original Message-----
> From: Satish Balay [mailto:balay at mcs.anl.gov]
> Sent: Tuesday, September 29, 2020 5:39 PM
> To: Thuc Bui
> Cc: 'petsc-users'
> Subject: Re: [petsc-users] Failed to build Petsc statically linked to MKL
> for Windows
>
> > LINK : fatal error LNK1181: cannot open input file
> 'C:\PROGRA~2\INTELS~1\COMPIL~1.279\windows\mkl\lib\mkl_intel_lp64.lib'
>
> please verify if the file exists. What do you have for:
>
> ls
> /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_lp64.li
> b
>
> Satish
>
> On Tue, 29 Sep 2020, Thuc Bui wrote:
>
> > Hi Barry & Satish,
> >
> > I also did a configuration to have a full path for each library as follows
> >
> > ./configure --with-cc='win32fe cl' --with-cxx='win32fe cl' --with-fc=0
> > --with-openmp --with-debugging=0 --with-mpi=0
> >
> --with-blas-lapack-lib="/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/m
> > kl/lib/mkl_intel_lp64.lib
> > /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_core.lib
> >
> /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_thread.
> > lib
> > /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/libiomp5md.lib"
> >
> > and also got the same error message. Attached is the configure.log.
> >
> > UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log for
> > details):
> >
> ----------------------------------------------------------------------------
> > ---
> > You set a value for --with-blaslapack-lib=<lib>, but
> >
> ['/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_lp64.
> > lib',
> > '/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_core.lib',
> >
> '/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_thread
> > .lib',
> >
> '/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/libiomp5md.lib']
> > cannot be used
> >
> ****************************************************************************
> > ***
> >
> > Thanks,
> > Thuc
> >
> > -----Original Message-----
> > From: Thuc Bui [mailto:bui at calcreek.com]
> > Sent: Tuesday, September 29, 2020 5:17 PM
> > To: petsc-users
> > Cc: Barry Smith
> > Subject: RE: [petsc-users] Failed to build Petsc statically linked to MKL
> > for Windows
> >
> > Hi Barry & Satish,
> >
> > I really appreciate you are getting back to me. Because libiomp5md.lib is
> > not in the mkl/lib directory, I just copy it to the same directory and per
> > your suggestion use the followings
> >
> > ./configure --with-cc='win32fe cl' --with-cxx='win32fe cl' --with-fc=0
> > --with-openmp --with-debugging=0 --with-mpi=0
> >
> --with-blas-lapack-lib="-L/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows
> > /mkl/lib mkl_intel_lp64.lib mkl_core.lib mkl_intel_thread.lib
> > libiomp5md.lib"
> >
> > Unfortunately, I got the same error message as below. I am attaching
> > configure log, and hopefully you can see what I am doing icorrectly.
> >
> > Many thanks,
> > Thuc
> >
> >
> ----------------------------------------------------------------------------
> > ---
> > You set a value for --with-blaslapack-lib=<lib>, but
> > ['-L/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib',
> > 'mkl_intel_lp64.lib', 'mkl_core.lib', 'mkl_intel_thread.lib',
> > 'libiomp5md.lib'] cannot be used
> >
> ****************************************************************************
> > ***
> >
> > -----Original Message-----
> > From: Satish Balay [mailto:balay at mcs.anl.gov]
> > Sent: Tuesday, September 29, 2020 4:12 PM
> > To: Thuc Bui
> > Cc: petsc-users at mcs.anl.gov
> > Subject: Re: [petsc-users] Failed to build Petsc statically linked to MKL
> > for Windows
> >
> >
> https://software.intel.com/content/www/us/en/develop/articles/intel-mkl-link
> > -line-advisor.html
> >
> > Checking for MS compilers - [MKL2018+] it gives:
> >
> > mkl_intel_lp64.lib mkl_intel_thread.lib mkl_core.lib libiomp5md.lib
> >
> > i.e no -Wl,--start-group [MS compiler most likely does not use this
> option]
> >
> > So you can try:
> >
> >
> --with-blaslapack-lib="-L/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/
> > mkl/lib/ mkl_intel_lp64.lib mkl_intel_thread.lib mkl_core.lib
> > libiomp5md.lib"
> >
> > Satish
> >
> >
> > On Tue, 29 Sep 2020, Thuc Bui wrote:
> >
> > > Dear Petsc Users,
> > >
> > >
> > >
> > > I have successfully built Petsc v3.13.5 for Windows 10 VS2015 without
> > > Fortran compiler and without MPI. These successful builds are either
> > > linked statically with Blas-Lapack or dynamically with Intel MKL.
> > > However, when linking dynamically to MKL, I would have to include 4
> > > more Intel DLLs for building applications. I would like to have Petsc
> > > linking statically to MKL to avoid having these extra DLLs, but have
> > > not been successful. Here is how I run configure for static link
> > >
> > >
> > >
> > > ./configure --with-cc='win32fe cl' --with-cxx='win32fe cl' --with-fc=0
> > > --with-openmp --with-debugging=0 --with-mpi=0
> > > --with-blas-lapack-lib="-Wl,--start-group
> > > /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_l
> > > p64.li b
> > > /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_core.li
> > > b
> > >
> >
> /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_thread.
> > > lib -Wl,--end-group"
> > >
> > >
> > >
> > > I got this configuration error,
> > >
> > >
> > >
> > > ======================================================================
> > > ======
> > > === TESTING: checkLib from
> > > config.packages.BlasLapack(config/BuildSystem/config/pack*************
> > > ******
> > > ************************************************************
> > >
> > > UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log
> for
> > > details):
> > >
> > > ----------------------------------------------------------------------
> > > ------
> > > ---
> > >
> > > You set a value for --with-blaslapack-lib=<lib>, but
> > > ['-Wl,--start-group',
> > > '/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_
> > > lp64.l
> > > ib',
> > > '/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_core.l
> > > ib',
> > > '/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_
> > > thread .lib', '-Wl,--end-group'] cannot be used
> > >
> > > **********************************************************************
> > > ******
> > > ***
> > >
> > >
> > >
> > > Can someone point me to a proper syntax to link to MKL statically?
> > > Attached is the configure.log if you need it.
> > >
> > >
> > >
> > > I have also tried unsuccessfuly,
> > >
> > > --with-blas-lapack-lib="/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/win
> > > dows/m
> > > kl/lib/mkl_intel_lp64.lib
> > > /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_core.li
> > > b
> > >
> >
> /cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/windows/mkl/lib/mkl_intel_thread.
> > > lib"
> > >
> > > or
> > >
> > > --with-blas-lapack-lib="-L/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/w
> > > indows /mkl/lib -lmkl_intel_lp64.lib -lmkl_core.lib
> > > -lmkl_intel_thread.lib",
> > >
> > > or
> > >
> > > --with-blas-lapack-lib="-L/cygdrive/c/PROGRA~2/INTELS~1/COMPIL~1.279/w
> > > indows /mkl/lib mkl_intel_lp64.lib mkl_core.lib mkl_intel_thread.lib"
> > >
> > > and all gave the similar error message.
> > >
> > >
> > >
> > > Many thanks in advance for your help,
> > >
> > > Thuc Bui
> > >
> > > Senior R&D Engineer
> > >
> > > Calabazas Creek Research, Inc.
> > >
> > > (650) 948-5361 (Office)
> > >
> > > (650) 948-7562 (Fax)
> > >
> > >
> > >
> > >
> > >
> > >
> >
>
More information about the petsc-users
mailing list