[petsc-users] Failed to build Petsc statically linked to MKL for Windows
Satish Balay
balay at mcs.anl.gov
Tue Sep 29 19:38:30 CDT 2020
> 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.lib
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