Where does one download this install of clang from? I see one at https://github.com/llvm/llvm-project/releases/tag/llvmorg-15.0.6 i.e https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.6/LLVM-15.0.6-win64.exe - but it looks a bit different that what you have.
There is also clang available via cygwin, and PETSc can be build with it. [but that's a bit different than win-clang] However to build with clang that you have [and the above from llvm] - it might need significant work from someone who understand the windows issues. One way cold be to improve win32fe to support win-clang [but that's not easy - win32fe code base is a very old - and hardly modified in past many years] Alternative could be to get petsc configure working with win-python - and use it with win-clang [deal with issues like /tmp and such paths without cygwin]. Again could be a major project. [and then fortran, MPI?] So no easy solution here to get this working. Satish On Wed, 25 Jan 2023, Guo, Sam wrote: > Sorry, I don't know too much about clang. Our code is compiled on win using > clang and that's why I want to compile PETSc using clang as well. > > -----Original Message----- > From: Satish Balay <[email protected]> > Sent: Tuesday, January 24, 2023 7:37 PM > To: Guo, Sam (DI SW STS SDDEV MECH PHY FEA FW) <[email protected]> > Cc: petsc-users <[email protected]> > Subject: Re: [petsc-users] compile PETSc on win using clang > > Here is my prior message: > > >>>>>> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.wikihow.com%2FInstall-Clang-on-Windows&data=05%7C01%7Csam.guo%40siemens.com%7C2dcacf01ab3848588c5908dafe856a17%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C638102146240080885%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=pUZfgzke8JGODkOLNR1101lrdINswnqqg2kM%2FOAN2kU%3D&reserved=0 > > Is the clang you have from visual studio - as described above? > > We don't have experience with using this variant of clang. > > If its compatible with 'cl' - and supports the same command interface as 'cl' > then the following might work [assuming clang.exe is the compiler binary > installed - and available in PATH]: > > '--with-cc=win32fe cl --use clang' > <<<< > > However I see: > > >>> > /home/xian/dev/compilers/win64/clang11.1.0/bin/ > <<< > > Clearly its not the above compiler [with the above constraints] - so the > above instructions won't work. > > How do you get this compiler? > > Any particular reason you need to build PETSc with this compiler? > > Satish > > > On Wed, 25 Jan 2023, Guo, Sam wrote: > > > I've added the path to clang to PATH but configuration still failed. > > configure.log is attached. Thanks a lot for your help. > > ________________________________ > > From: Satish Balay <[email protected]> > > Sent: Tuesday, January 24, 2023 5:36 PM > > To: Guo, Sam (DI SW STS SDDEV MECH PHY FEA FW) <[email protected]> > > Cc: petsc-users <[email protected]> > > Subject: Re: [petsc-users] compile PETSc on win using clang > > > > Do you have clang in your PATH? Is the binary named clang for something > > else? > > > > > > >>>>>>> > > Defined make macro "CC" to > > "/home/xian/dev/star/petsc/lib/petsc/bin/win32fe/win32fe cl --use clang" > > Executing: /home/xian/dev/star/petsc/lib/petsc/bin/win32fe/win32fe cl > > --use clang -c -o /tmp/petsc-t4q6osvc/config.setCompilers/conftest.o > > -I/tmp/petsc-t4q6osvc/config.setCompilers -O2 -MD -wd4996 > > /tmp/petsc-t4q6osvc/config.setCompilers/conftest.c > > Possible ERROR while running compiler: exit code 15 > > Source: > > #include "confdefs.h" > > #include "conffix.h" > > > > int main() { > > ; > > return 0; > > } > > > > Error testing C compiler: Cannot compile C with > > /home/xian/dev/star/petsc/lib/petsc/bin/win32fe/win32fe cl --use clang. > > > > <<<<<< > > > > You can try this test below manually - with the --verbose option. [I > > don't have clang - so using 'cl' here] > > > > >>>>>> > > balay@ps5 ~/petsc/src/benchmarks > > $ ~/petsc/lib/petsc/bin/win32fe/win32fe cl --use cl --verbose sizeof.c > > > > Using tool: cl > > Win32 Development Tool Front End, version 1.11.4 Fri, Sep 10, 2021 > > 6:33:40 PM Attempting to create file: C:\cygwin64\tmp\wfe2972.tmp cl > > Microsoft (R) C/C++ Optimizing Compiler Version 19.30.30709 for x64 > > del C:\cygwin64\tmp\wfe2972.tmp Attempting to create file: > > C:\cygwin64\tmp\wfe2983.tmp cl sizeof.c -link Microsoft (R) C/C++ > > Optimizing Compiler Version 19.30.30709 for x64 Copyright (C) > > Microsoft Corporation. All rights reserved. > > > > sizeof.c > > Microsoft (R) Incremental Linker Version 14.30.30709.0 Copyright (C) > > Microsoft Corporation. All rights reserved. > > > > /out:sizeof.exe > > sizeof.obj > > del C:\cygwin64\tmp\wfe2983.tmp > > > > balay@ps5 ~/petsc/src/benchmarks > > $ ~/petsc/lib/petsc/bin/win32fe/win32fe cl --use dummy-binary > > --verbose sizeof.c > > > > Using tool: dummy-binary > > Win32 Development Tool Front End, version 1.11.4 Fri, Sep 10, 2021 > > 6:33:40 PM Attempting to create file: C:\cygwin64\tmp\wfe6AD0.tmp > > dummy-binary win32feutils::CreateProcess failed. > > dummy-binary > > The system cannot find the file specified. > > > > del C:\cygwin64\tmp\wfe6AD0.tmp > > > > balay@ps5 ~/petsc/src/benchmarks > > $ > > > > <<<<<<< > > > > Satish > > > > > > > > On Wed, 25 Jan 2023, Guo, Sam wrote: > > > > > configure.log with -with-cc="win32fe cl --use clang" > > > ________________________________ > > > From: Satish Balay <[email protected]> > > > Sent: Tuesday, January 24, 2023 5:15 PM > > > To: Guo, Sam (DI SW STS SDDEV MECH PHY FEA FW) <[email protected]> > > > Cc: Barry Smith <[email protected]>; petsc-users > > > <[email protected]> > > > Subject: Re: [petsc-users] compile PETSc on win using clang > > > > > > Configure Options: --configModules=PETSc.Configure > > > --optionsModule=config.compilerOptions --with-cc="win32fe cl" --use > > > win32fe clang --with-fc=0 > > > --with-debugging=0 -CFLAGS="-O2 -MD -wd4996" -CXXFLAGS="-O2 -MD > > > -wd4996" --with-mpi=0 --with-clean=1 --force --with-scalar-type=real > > > --ignore-cygwin-link -CFLAGS="-O2 -MD -wd4996" -CXXFLAGS="-O2 -MD -wd4996" > > > > > > It should be --with-cc="win32fe cl --use clang" > > > > > > But then - this mode is untested with configure - so there could be other > > > issues. > > > > > > Also - do you need c++? If not - use --with-cxx=0. This can avoid > > > the error below. [for clang++ - you might need --with-cxx="win32fe > > > cl --use clang++" - again untested - so might not work..] > > > > > > Satish > > > > > > > > > On Tue, 24 Jan 2023, Guo, Sam wrote: > > > > > > > Attached please find configure.log. > > > > > > > > error messgae: > > > > C:\home\xian\dev\star\petsc\src\sys\objects\device\INTERF~1\device > > > > .cxx(486): error C2065: 'PETSC_DEVICE_CASE': undeclared identifier > > > > > > > > ________________________________ > > > > From: Satish Balay <[email protected]> > > > > Sent: Tuesday, January 24, 2023 2:00 PM > > > > To: Barry Smith <[email protected]> > > > > Cc: Guo, Sam (DI SW STS SDDEV MECH PHY FEA FW) > > > > <[email protected]>; [email protected] > > > > <[email protected]> > > > > Subject: Re: [petsc-users] compile PETSc on win using clang > > > > > > > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F > > > > www.wikihow.com%2FInstall-Clang-on-Windows&data=05%7C01%7Csam.guo% > > > > 40siemens.com%7C2dcacf01ab3848588c5908dafe856a17%7C38ae3bcd95794fd > > > > 4addab42e1495d55a%7C1%7C0%7C638102146240080885%7CUnknown%7CTWFpbGZ > > > > sb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6M > > > > n0%3D%7C3000%7C%7C%7C&sdata=pUZfgzke8JGODkOLNR1101lrdINswnqqg2kM%2 > > > > FOAN2kU%3D&reserved=0 > > > > > > > > Is the clang you have from visual studio - as described above? > > > > > > > > We don't have experience with using this variant of clang. > > > > > > > > If its compatible with 'cl' - and supports the same command interface > > > > as 'cl' then the following might work [assuming clang.exe is the > > > > compiler binary installed - and available in PATH]: > > > > > > > > '--with-cc=win32fe cl --use clang' > > > > > > > > Satish > > > > > > > > > > > > On Tue, 24 Jan 2023, Barry Smith wrote: > > > > > > > > > > > > > > Are you using clang as a replacement for the > > > > > > > > > > * "Unix-like" Cygwin GNU compilers compilers or > > > > > > > > > > * MinGW GNU compilers that are compatible with the Microsoft > > > > > compilers? > > > > > > > > > > If the former, follow the instructions for using the Cygwin GNU > > > > > compilers, if the latter follow the directions for the MinGW > > > > > compilers. > > > > > > > > > > Send the configure.log and make.log if things go wrong and we'll > > > > > help you out. > > > > > > > > > > Barry > > > > > > > > > > > > > > > > > > > > > > > > > > On Jan 24, 2023, at 4:01 PM, Guo, Sam <[email protected]> wrote: > > > > > > > > > > > > Hi PETSc dev team, > > > > > > I try to compile PETSc on win using clang. I am wondering if you > > > > > > could give me some hint. (I’ve already made intel compiler work on > > > > > > win using win32fe icl). > > > > > > > > > > > > Thanks, > > > > > > Sam Guo > > > > > > > > > > > > > > > > > > > >
